我有一个tab-control
with DrawMode
set to OwnerDrawFixed
。我希望当鼠标移动到某个特定位置时,tab-control
该位置的颜色应该改变。我尝试过使用Rectangle
,但我不知道如何更改Rectangle
.
这就是我所拥有的。
private void tabControl1_MouseMove(object sender, MouseEventArgs e)
{
for (int i = 0; i < this.tabControl1.TabPages.Count; i++)
{
Rectangle r = tabControl1.GetTabRect(i);
Rectangle closeButton = new Rectangle(r.Right - 15, r.Top + 4, 12, 12);
if (closeButton.Contains(e.Location))
{
}
}
}
编辑: DrawItem
代码
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e)
{
e.Graphics.DrawString("x", e.Font, Brushes.Red, e.Bounds.Right-16, e.Bounds.Top+4);
e.Graphics.DrawString(this.tabControl1.TabPages[e.Index].Text, e.Font, Brushes.Black, e.Bounds.Left + 12, e.Bounds.Top + 4);
e.DrawFocusRectangle();
}
我的问题是,我如何为矩形着色,如果不可能,我还能用什么其他方式?