以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]输入助手与允许直接输入  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=10754)

--  作者:gudaosiren
--  发布时间:2011/6/21 22:53:00
--  [求助]输入助手与允许直接输入

如果允许直接输入设置为FALSE的话,那么输入助手就失效了。而要输入助手生效,允许直接输入必须设置为TRUE。

我想问,能不能允许直接输入设置为FALSE,而输入助手也生效。

因为要输入的下拉非堂多,要靠输入助手才比较快速定位要输入的。而我又不想让用户直接输入。


--  作者:blackzhu
--  发布时间:2011/6/22 7:27:00
--  
列属性本来就是分开来的.
--  作者:yacity
--  发布时间:2011/6/22 8:34:00
--  

对 !!!!有同感!!!!强烈支持中。

开启输入助手后,(比如数据来源于A列)如果允许直接输入的话,用户可能会输入非A列中 限制的数据。有时候这是开发者不愿意看到的。

比如建立了一个产品表, 然后销售表 输入的时候开启输入助手,数据来源于产品表, 开启输入助手,允许直接输入,这时候,很容易输入非产品表中的数据。有时候误操作也会。

但是如果 直接输入设置为FALSE,输入助手就失效了。


--  作者:gudaosiren
--  发布时间:2011/6/22 23:14:00
--  

看来不止只有我遇到这个难题,狐狸爸爸有时间帮忙关注一下,看看能不能帮忙解决,使软件功能更加人性化。


--  作者:mr725
--  发布时间:2011/6/22 23:59:00
--  
自己加个判断,也能排除非指定列项目的值(提示后,清空已输入的非列表项目的内容)
[此贴子已经被作者于2011-6-22 23:59:34编辑过]

--  作者:gudaosiren
--  发布时间:2011/6/23 11:10:00
--  
不好意思,判断我不会写,能不能帮忙写一下呢?谢谢
--  作者:yacity
--  发布时间:2011/6/23 20:30:00
--  

顶!


--  作者:狐狸爸爸
--  发布时间:2011/6/24 7:56:00
--  

这个只能自己写代码判断的,代码很简单,如果列表项目来自于表,就在DataColChanged事件判断输入的值是存在于来源表中。

如果是自定义,就判断输入的值是否包括在列的ComboList属性中。

如果不会写,可以自己做个简单例子上来,我帮你写一下参考。


--  作者:gudaosiren
--  发布时间:2011/6/25 0:23:00
--  
我要求,在表A中只能输入表B相对应列的数据。例如:表A中的“客户”列,只能输入表B中的“客户”列的数据。“品种”、“规格”、“单位”,这些也是。请问认如何加个判断,帮忙写个代码,谢谢~~~
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目69.table


--  作者:狐狸爸爸
--  发布时间:2011/6/25 8:02:00
--  

设置ValidateEdit事件代码:

 

If e.Col.Name = "客户" AndAlso e.text > "" Then
    Dim dr = DataTables("表B").Find("客户 = \'" & e.Text & "\'")
    If dr Is Nothing Then
        e.Cancel = True
    End If
End If

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目81.table