mirror of
https://github.com/TheUltimateHacker/ShiftOS.git
synced 2025-01-22 16:12:14 +00:00
ShiftOS Tabs
ShiftOs Tabs Class
This commit is contained in:
parent
f796e83362
commit
bbf81cacae
1 changed files with 40 additions and 0 deletions
40
ShiftOS/ShiftOSTabs.vb
Normal file
40
ShiftOS/ShiftOSTabs.vb
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
Public Class ShiftOSTabs
|
||||||
|
|
||||||
|
Inherits TabControl
|
||||||
|
Sub New()
|
||||||
|
SetStyle(ControlStyles.AllPaintingInWmPaint Or ControlStyles.OptimizedDoubleBuffer Or ControlStyles.ResizeRedraw Or ControlStyles.UserPaint, True)
|
||||||
|
DoubleBuffered = True
|
||||||
|
SizeMode = TabSizeMode.Fixed
|
||||||
|
ItemSize = New Size(120, 30)
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Protected Overrides Sub CreateHandle()
|
||||||
|
MyBase.CreateHandle()
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Protected Overrides Sub OnPaint(e As PaintEventArgs)
|
||||||
|
Dim B As New Bitmap(Width, Height)
|
||||||
|
Dim G As Graphics = Graphics.FromImage(B)
|
||||||
|
|
||||||
|
G.Clear(Color.Gainsboro)
|
||||||
|
|
||||||
|
For i = 0 To TabCount - 1
|
||||||
|
Dim TabRectangle As Rectangle = GetTabRect(i)
|
||||||
|
|
||||||
|
If i = SelectedIndex Then
|
||||||
|
G.FillRectangle(Brushes.DarkGray, TabRectangle)
|
||||||
|
Else
|
||||||
|
G.FillRectangle(Brushes.LightGray, TabRectangle)
|
||||||
|
End If
|
||||||
|
|
||||||
|
G.DrawString(TabPages(i).Text, Font, Brushes.White, TabRectangle, New StringFormat With {.Alignment = StringAlignment.Center, .LineAlignment = StringAlignment.Center})
|
||||||
|
Next
|
||||||
|
|
||||||
|
e.Graphics.DrawImage(B.Clone, 0, 0)
|
||||||
|
G.Dispose() : B.Dispose()
|
||||||
|
MyBase.OnPaint(e)
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
End Class
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue