以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]记录窗口中列单元格焦点的获取 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=48721) |
-- 作者:gfj72 -- 发布时间:2014/4/3 16:58:00 -- [求助]记录窗口中列单元格焦点的获取 求助: 我通过窗口的记录窗口向“表A“中输入数据,在点新增后,其中一些 满足条件的数据都会完成自动输入了,然后想让其中的第二列“班次”单元格获得焦点, 但结果总是第一列“生产日期”获得焦点,这如何设计?
![]() ![]() ![]() ![]() |
-- 作者:Bin -- 发布时间:2014/4/3 17:23:00 -- 这个没有办法控制. |
-- 作者:狐狸爸爸 -- 发布时间:2014/4/3 17:28:00 -- 非主流:
e.Form.Controls("RecordGrid1").BaseControl.Row = 1 |
-- 作者:gfj72 -- 发布时间:2014/4/4 8:27:00 -- 谢谢,非常有效,另外想再深入问一句,如果在获得焦点时,其光标是在单元格内处于全选,或光标在最前,或最后又如何设定呢? |
-- 作者:狐狸爸爸 -- 发布时间:2014/4/4 9:44:00 -- e.Form.Controls("RecordGrid1").BaseControl.Row = 1 e.Form.Controls("RecordGrid1").BaseControl.StartEditing() |
-- 作者:gfj72 -- 发布时间:2014/4/4 10:49:00 -- 谢谢狐爸,非常完美的解决了问题。程序已正常投入使用。 另外再请教个问题。 我在“表A”的datecolchanged事件中设置了如下代码 Select Case e.DataCol.name |
-- 作者:有点甜 -- 发布时间:2014/4/4 11:18:00 -- 以下是引用gfj72在2014-4-4 10:49:00的发言:
如果我在“班次”中输入数据按回车键后发生了>1事件,在对话框后,我希望焦点还回到“班次”单元格,而不是执行回车键命令进入“机台号”单元格。要如何实现?
你的这个需求用 validateEdit 事件更合适
http://www.foxtable.com/help/topics/0617.htm |
-- 作者:gfj72 -- 发布时间:2014/4/4 11:56:00 -- 这个事件对于单个列值变化好用,但对于多列联动变化来说就没有那么好用了。 |
-- 作者:Bin -- 发布时间:2014/4/4 12:04:00 -- 非要这么做的话,可以在KeyDownEdit事件做下判断. If e.keycode =keys.Enter Then e.cancel=True End If |