在窗口SQL型Table增加一行时,如果金额列没有填写数字,那么,在离开这个窗口SQLtable的时候想给个提示,如果确定不填写
则删除该行,不知道代码放在在哪?
哈哈,在窗口的全局事件leave 就可以了,Sorry~ 刚才一直在table的事件中没找到相应的地方。。。
[此贴子已经被作者于2010-2-11 12:33:39编辑过]
以下是引用czy在2010-2-10 23:21:00的发言:
BeforeClose事件吧。
不关闭窗口呀~
1楼说的leave还有问题, 为什么有时可以离开窗口(这里是SQL型的)table点击另一个按钮或焦点移到窗口中的主表上而没有提示,有些按钮(如:允许窗口table的编辑按钮)点击会正常提示,总之还是没有彻底解决啊~
反正窗口table中新增了行,金额列又没有输入内容,想离开窗口的这个Table时,要给个提示,确认不输入后,删除该行,看那位有好办法?
[此贴子已经被作者于2010-2-11 0:05:44编辑过]
再说明一下,我的这个窗口有一个normal型table,绑定到主表,另一个是SQL型Table,从Access加载的数据,显示的是和主表 编号 列相同的记录,SQL型Table新增行时,如果金额列填写数字,主表的相关列会随之计算。
问题时:在SQL型Table中新增行后,很可能什么也不填写,又在主表选择另一行,这时前面新增行就一直保留在SQL型Table中了, 如果在主表的另一行又同样操作,并完成了另一编号的新增行的全部输入,保存后,后台不是多出一行没有填写金额的行了吗?
[此贴子已经被作者于2010-2-11 0:09:08编辑过]
我说明白了吗? 有办法解决吗? 怎么没人回话啊~ 要过年了,祝贺大家新年好!!!
这样的要求是不是可以用定时器(其它好象没合适的地方放代码)?
判断焦点是不是在的啊SqlTable表,判断指定列是不是为空,你可以试试这样行不行。
今天公司网络问题,一直上不了。估计焦点也不行,因为我另一个窗口有加载这个SQLTable的查询情况,关闭后回到这个SQLTable中时,也提示,见鬼~ (我代码放在Leave时间中) 刚重启电脑,一会去试一试看~~
焦点应该是这样的表示吧:
CurrentTable.Select(1,1) 或 CurrentTable.focus
[此贴子已经被作者于2010-2-11 17:00:01编辑过]
试了一天了,非要放在主表的currentChanged事件中才行,真不想增加其负担啊~
再说,焦点照样可以在其他窗口控件上点击,甚至可以用按钮更换主表的current位置 。 几乎也没什么绝对作用!!! 说明CurrentChange事件对代码换行无效!!!
[此贴子已经被作者于2010-2-11 17:50:19编辑过]