Che*_*eso 1 .net tabcontrol winforms
我有一个winforms TabControl的扩展,它在每个选项卡上绘制一个X,以允许用户关闭选项卡.
alt text http://i41.tinypic.com/bhelqp.jpg
与标准相比:
替代文字http://i42.tinypic.com/2zqa2c3.jpg
如何模拟该图像上的按钮外观?我的意思是,当用户点击时,它应该在视觉上表明.按钮使用插入图像执行此操作.对于奖励积分,我也想做悬停部分 - 鼠标悬停时图像将"亮起".
但X不是一个按钮,它不是PictureBox控件.它根本不是一种控制.它刚刚被吸引到那里.
有没有办法在MouseDp上绘制插入边框并在MouseUp上引发?对于"插入"阶段,我会更好地生成另一个图像吗?(另一个用于悬停).
有人这么做过吗?
相关:模拟Winforms按钮点击动画
但是这个问题不同,因为他实际上有一个PictureBox控件.我不.
如果您刚刚在那里绘制它,那么您需要执行以下操作:
我拼凑了一些关于它看起来如何的代码
myControl.MouseClick += new EventHandler(myClickHandler);
private void myClickHandler(EventArgs e)
{
//Check e to see if left button was pressed
//Check e location to see if mouse is in correct location, i.e. over the "X"
//If so then alter a state variable i.e. tabstates[0] = TabStates.HOVER;
}
private void myDrawingFunc()
{
//Draw X
if (tabstates[0] == TabStates.HOVER)
{
//Draw hover state
}
else
{
//Draw other state
}
}
Run Code Online (Sandbox Code Playgroud)
这显然只是一个例子,但大致表明你将如何做到这一点.注意我添加tabstates为数组或列表,以允许您为每个选项卡具有状态.
| 归档时间: |
|
| 查看次数: |
1584 次 |
| 最近记录: |