【发布时间】:2012-02-20 02:38:46
【问题描述】:
我想在当前行的特定单元格的右下角显示弹出按钮或花哨的消息(带有彩色背景等)。
目前我只知道如何获取网格坐标:
x = DBGrid.DataSource.DataSet.RecNo
y = DBGrid.Columns[索引]
还有TCustomGrid.CellRect,它可以做我想做的事,但它是受保护的,我不想继承和创建另一个组件类。
我能想到的一个疯狂的解决方法是将 onDrawColumnCell 事件中的 TRect-s 保存到某个数组中。
那么,你怎么看?
编辑
如何获取当前行中第二个单元格的屏幕坐标?
【问题讨论】:
-
@downvoter:问题是不是建设性的或过于开放的问题或不是一个真正的问题?你能详细说明一下,以便我改进它吗?
-
我不是反对者,但我怀疑这是因为您的问题不清楚。你想要当前选中的单元格、鼠标下的单元格、被点击的单元格,还是别的什么?
-
@KenWhite:感谢您的反馈。现在好点了吗?
-
稍微好一点。顺便说一句,您的任何解决方案都不起作用。
RecNo并不一定意味着什么;索引顺序会影响行顺序,Columns[Index]给你列而不是行,在OnDrawColumnCell中保存坐标将无济于事,因为它与网格中的当前行没有关系,除非在绘制单元格期间. (我(还)没有提供解决方案,但我可以看到你正在考虑做的事情的缺陷。)