找回密码
 立即注册

QQ登录

只需一步,快速开始

ljbpro

论坛元老

6

主题

19

帖子

5218

积分

论坛元老

积分
5218

活字格认证

[已处理] MouseOver事件

ljbpro
论坛元老   /  发表于:2014-6-16 13:05  /   查看:7039  /  回复:6
鼠标移动到行header,列header上时,cell的背景色会变化。
能不能实现背景色不变化

追加:作业的版本是multirow 7.0

6 个回复

倒序浏览
dafo
版主   /  发表于:2014-6-16 15:14:00
沙发
如果你是想Header的样式跟着Windows系统走,那么这么Hover效果是取决与Window系统的Theme设置,用户仅能修改Window系统的Theme来改变Header的Hover样式.
如果你可以不使用系统的样式,你可以在模版中选择这些HeaderCell,通过属性面板设置它们的FlatStyle = Flat, 并且在FlatAppearance.MouseOverBackColor和Style.BackColor相同的颜色可以禁止掉headerCell的Hover效果。
回复 使用道具 举报
ljbpro
论坛元老   /  发表于:2014-6-16 15:51:00
板凳
回复 2楼dafo的帖子

headercell的背景色不固定的情况,该如何对应?
例如,点击之后headercell的背景色变为黑色,鼠标hover时背景色也要求为黑色。
回复 使用道具 举报
dafo
版主   /  发表于:2014-6-16 16:15:00
地板
HeaderCell.FlatAppearance中你可以通过设置MouseDownBackColor和MouseOverBackColor为黑色来达到你的要求。
MouseDownBackColor仅能设置你鼠标点下去的颜色,如果你是要动态的改变HeaderCell的背景色,你只能在GcMultiRow.CellClick事件中改变点击Cell的Style.BackColor来实现。
回复 使用道具 举报
ljbpro
论坛元老   /  发表于:2014-6-16 16:57:00
5#
回复 4楼dafo的帖子

不好意思,可能表述的不清楚。想要实现下面的效果。
headercell未点击时,背景色为蓝色,鼠标hover时也为蓝色,背景色不变。
点击headercell时,背景色变为黑色,鼠标hover时背景色不变,为黑色。
点击其他headercell时,该headercell背景色恢复为蓝色,鼠标hover背景色不变
回复 使用道具 举报
dafo
版主   /  发表于:2014-6-16 17:17:00
6#
了解。
1. 设置HeaderCell.FlatStyle = Flat.
2. 设置HeaderCell.Style.BackColor = Blue.
3. 设置HeaderCell.Style.MouseOverBackColor = Transparent.
4. 设置HeaderCell.Style.SelectionBackColor = Black.

补充: 这样的设置无法改变ColumnHeaderCell的选择时变为黑色效果,因为ColumnHeaderCell永远无法选择,所以SelectionBackColor设置不能起作用,要模拟你的需求,仍然需要在GcMultiRow.CellClick事件中动态改变ColumnHeaderCell的Style.BackColor来实现。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-7-1 18:20:00
7#
回复 5楼ljbpro的帖子

请问你的问题解决了么?如果还有新的问题欢迎开新帖交流。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部