专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VFP

焦点的有关问题

发布时间:2010-05-24 21:49:29 文章来源:www.iduyao.cn 采编人员:星星草
焦点的问题
按tab键,当text控件获得焦点的时候,设置它的value=0.00或者触发一个valid事件进行有效性检验,用来控制输入,假设只能输入数字。请问如何实现?
*BINDEVENT() 函数。下面是一个简单示例。 
PUBLIC oform1 
oform1=NEWOBJECT("form1") 
oform1.SHOW 
RETURN 
DEFINE CLASS form1 AS FORM 
TOP = 24 
LEFT = 158 
DOCREATE = .T. 
CAPTION = "Bindevent 示例" 
NAME = "Form1" 
PROCEDURE _click 
THISFORM.text1.VALUE=THISFORM.ACTIVECONTROL.NAME &&此处可改为表单文件名 
thisform.Refresh 
ENDPROC  
PROCEDURE LOAD && 变量定义放在load事件中
PUBLIC t1,t2,t3
t1=""
t2=0.0
t3=DATE()
ENDPROC 
PROCEDURE INIT 
LOCAL i,j,cname 
THISFORM.LOCKSCREEN=.T. 
FOR i=1 TO 3 
FOR j=1 TO 3 
cname= 'cmd'+ALLTRIM(STR(i,1))+ALLTRIM(STR(j,1))
THISFORM.ADDOBJECT(cname, 'COMMANDBUTTON') && ADDOBJECT
WITH THISFORM.&cname. 
.LEFT=j*100-60 
.TOP=i*40 
.CAPTION= '按钮 &cname. ' 
.HEIGHT=25 
.WIDTH=80 
.VISIBLE=.T. 
ENDWITH 
BINDEVENT(THISFORM.&cname., 'click',THISFORM, '_CLICK') && 绑定_click事件
ENDFOR 
ENDFOR
THISFORM.ADDOBJECT( 'text1', 'textbox') && ADDOBJECT
WITH THISFORM.text1 
.LEFT=80 
.TOP=160 
.HEIGHT=25 
.WIDTH=200 
.VISIBLE=.T. 
ENDWITH 
THISFORM.LOCKSCREEN=.F. && 改变了表单所包含对象的属性时,表单成批应用所有改动
ENDPROC 
ENDDEFINE

------解决方案--------------------
怎样让文本框里只能输入0~9几个数据?是在属性里设置吗?设置那个参数?
还是在别的地方处理,谢谢大家帮忙!
---------------------------
1、 
在文本框的KeyPress事件中:
LPARAMETERS nKeyCode, nShiftAltCtrl
IF nKeyCode=48 AND nShiftAltCtrl=2 &&防止按Ctrl+0
NODEFAULT
ENDIF

然后
设置文本框的Value属性值,如:"0" &&能输入正整数和负整数。

设置文本框的Value属性值,如:"0.00" &&能输入正数和负数,可有小数位数,小数位数自定。
 

2、
设置文本框的Inputmask属值,如:"99999" &&只能输入正整数。

设置文本框的Inputmask属值,如:"99999.99" &&只能输入正数,可有小数位数,小数位数自定。

设置文本框的Inputmask属值,如:"#99999.99" &&能输入正数和负数,可有小数位数,小数位数自定。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: