以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请教:这个代码错在哪里? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=3836) |
||||
-- 作者:reachtone -- 发布时间:2009/8/7 18:01:00 -- 请教:这个代码错在哪里? With Tables("表A") .Filter = "1=2" \'隐藏全部行 .AddNew() \'增加行 .Select(.Current.Index,.Cols("第一列").Index) \'将焦点移到table的当前行\\第一列上 End With
|
||||
-- 作者:czy -- 发布时间:2009/8/7 19:09:00 -- 应该是焦点问题吧。 |
||||
-- 作者:czy -- 发布时间:2009/8/7 20:06:00 -- 或直接定位到最后行: With Tables("表A") .Filter = "1=2" \'隐藏全部行 .AddNew() \'增加行 .Select(.Rows.Count - 1,.Cols("第一列").Index) \'将焦点移到table的当前行\\第一列上 End With |
||||
-- 作者:reachtone -- 发布时间:2009/8/8 16:22:00 -- 谢谢C版的回复。按2、3楼的办法修改后,代码是不出错了,但焦点并没有移动到当前行的第一列上啊。 帮助上说,table里的AddNew会自动定位到新增加的行上,为什么用Current不行呢?请指教! |
||||
-- 作者:czy -- 发布时间:2009/8/8 17:19:00 -- 以下是引用reachtone在2009-8-8 16:22:00的发言:
谢谢C版的回复。按2、3楼的办法修改后,代码是不出错了,但焦点并没有移动到当前行的第一列上啊。 帮助上说,table里的AddNew会自动定位到新增加的行上,为什么用Current不行呢?请指教!
|
||||
-- 作者:reachtone -- 发布时间:2009/8/8 17:24:00 -- 用Syscmd.Row.AddNew()确实是不出错了。 那么怎样才能将焦点移动到新增行的第一列上呢?按楼上的代码,焦点还是在按钮上的。 |
||||
-- 作者:czy -- 发布时间:2009/8/8 17:30:00 -- 不好意思,我没在窗口按钮中测试。 在后面加上.Focus 如: With Tables("表A") .Filter = "1=3" \'隐藏全部行 Syscmd.Row.AddNew()\'增加行 .Select(.Current.Index,.Cols("第一列").Index) \'将焦点移到table的当前行\\第一列上 .Focus End With |
||||
-- 作者:reachtone -- 发布时间:2009/8/8 17:51:00 -- 可以了,谢谢!一直以为用select选择了指定单元格以后,焦点会自动移过去的,没想到还是要用focus方法。 我觉得这应该是个bug,包括addnew也是,期待老六看到这个帖子时能适当改进一下。 谢谢C版的热心帮助。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2009/8/8 18:01:00 -- 呵呵,这个不是bug的,选择单元格和新增行,并不见得就要获得焦点的。 |
||||
-- 作者:czy -- 发布时间:2009/8/8 18:06:00 -- 不获得焦点算不上bug,一楼的出错提示应该算吧?系统的add不出错,addnew又提示出错就解释不通了。 |