【发布时间】:2017-07-18 09:31:48
【问题描述】:
我在一个表单中有许多 TStringGrid 组件。我想使用 tab 在 StringGrids 之间移动。
问题是,当 goTabs 被激活时,它会很好地在 StringGrid 的单元格之间移动,但是一旦选择了右下角的单元格,下一个标签点击就会选择同一个 StringGrid 的左上角单元格。
我怎样才能覆盖它?
谢谢。
【问题讨论】:
-
这对您的用户来说不会是一个有趣的 UI。对我来说,TAB 应该在控件之间移动,或者在网格中的单元格之间移动,但不能同时在两者之间移动。您真的希望您的用户在一个控件中的所有单元格中进行 TAB 键,只是为了到达下一个控件。当存在单个主导网格时,网格内的选项卡适用于电子表格程序。
-
另外,如果你真的坚持要像这样向前跳转,请记住,你也需要实现反向跳转。
-
是的,我确实想这样做。它也像有很多编辑框,你只是从一个标签到另一个,所以我不觉得它那么不愉快或不直观。关于如何实现它的任何想法?
-
当您的网格包含数百个单元格时会发生什么?
-
无论如何,这很容易解决。你让你自己的网格后代。然后覆盖
KeyDown方法。然后当你在右下角的单元格(或左上角是ssShift in Shift)时改变行为
标签: delphi tabs tstringgrid