以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求助:如何编写窗体控件代码  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=67253)

--  作者:hch
--  发布时间:2015/4/21 10:10:00
--  求助:如何编写窗体控件代码
1、想在录入窗体的控件上添加提示控件信息,依据帮助文件除了 “TextBOX” 控件可加入提示信息,但在其他类型的控件如:“DropDownBox ” 、“ ComboBox”等控件上如何添加提示信息代码;
2、我有一个“TextBOX”控件,在此控件输入一个10位数的数值字段(如:1163400005),想在在录入此段10位数值时,首位数字必须是是1或是2,其他后8位数字可随意变化,否则给此控件一个提示语,提示录入错误。

--  作者:Bin
--  发布时间:2015/4/21 10:15:00
--  
Textchanged事件

if IsNumeric(e.sender.text) then
   if e.sender.text.StartsWith("1")=false orElse e.sender.text.StartsWith("2")=false Orelse  e.sender.text.length<>10 then
          messagebox.show("数值不对")
   end if
else
   messagebox.show("不是数值")
end if

--  作者:hch
--  发布时间:2015/4/21 16:46:00
--  
老师:根据你提供的代码添加到该控件Textchanged事件中测试发现在输入完该控件录入内容后,再在录入另外控件内容时,出现一个提示框显示:“数据不对”,而且不管我在该控件正确或错误输入数值后,录入其他控件内容时都弹出提示框显示:“数据不对”,而且能够保存。我的本意是想如果需要输入该控件字段内容时有一个逻辑判断,输入的首位数字不是1或2就给一个提示,并且不能输入下一个控件内容和保存信息。
--  作者:Bin
--  发布时间:2015/4/21 16:55:00
--  
写到DataColChangINg事件去吧

if e.datacol.name="第一列" then
   if e.datarow(e.datacol.name).StartsWith("1")=false andalso e.datarow(e.datacol.name).StartsWith("2")=false andalso e.datarow(e.datacol.name).length<>10 then
      messagebox.show("数值不对")
       e.cancel=true
end if
end if