TabControl с текущим треугольником вкладки
Мне нужно изменить этот tabcontrol, который я нашел онлайн, если я изменю высоту элемента, triable не корректируется должным образом
Код, выполняющий рисование
G.SmoothingMode = SmoothingMode.HighQuality
Dim p() As Point = {New Point(ItemSize.Height - 3, GetTabRect(i).Location.Y + 20), _
New Point(ItemSize.Height + 4, GetTabRect(i).Location.Y + 14), _
New Point(ItemSize.Height + 4, GetTabRect(i).Location.Y + 28)}
G.FillPolygon(Brushes.White, p)
G.DrawPolygon(New Pen(Color.FromArgb(170, 187, 204)), p)
Я внес коррективы в линию New Point(ItemSize.Height + 4, GetTabRect(i).Location.Y + 14)
безуспешно.
Мне нужно, чтобы треугольник был больше и центрирован в прямоугольнике вкладки, если размер отрегулирован, скажем, на 3 пункта.
Есть идеи
1 ответ
Решение
Я смог найти решение после дальнейшей обработки
Dim hlf As Integer = GetTabRect(i).Height \ 2
G.SmoothingMode = SmoothingMode.HighQuality
Dim p() As Point = {New Point(ItemSize.Height - 6, GetTabRect(i).Location.Y + hlf), _
New Point(ItemSize.Height + 4, GetTabRect(i).Location.Y + hlf - 7), _
New Point(ItemSize.Height + 4, GetTabRect(i).Location.Y + hlf + 7)}