【第九章9.10】edit,richedit -- 校验输入文本

贴主:admin 发贴:2024-08-06 11:06 浏量:12
//校验输入文本
import win.ui;
/*DSG{{*/
var winform = win.form(text="文本框限制输入金额";right=759;bottom=469)
winform.add(
edit={cls="edit";left=140;top=136;right=483;bottom=163;align="right";edge=1;z=1}
)
/*}}*/

//在 winform.edit 控件内关闭输入法避免误输非英文字符
winform.edit.disableInputMethod();

//设置默认输入提示,文本为空且控件失去焦点时显示 
//(指定单行文本框文本为空时显示的默认提示文本 需要在属性里面设置多行为false 不然不生效)
winform.edit.setCueBannerText("请输入金额");

//控件文本变更时触发 onChange 事件 
winform.edit.onChange = function(){  
	
	/*
	下面的函数用于限制编辑框只能输入数值,并且只能是表示货币金额的数值。
	如果输入错误则自动修正输入文本,并将输入光标移动到文本尾部并在编辑框内用气泡提示显示错误文本。
	
	用参数 @1 指定的模式表达式匹配与校验输入文本,
	用参数 @2 指定输入错误时显示的气泡提示文本。   
	*/
	winform.edit.validateText("<\d+\.\d\d>|<\d+\.\d>|<\d+\.>|<\d+>",
		"不能接受的字符","只能在此输入金额,小数点后不能超过 2 位!"); 
}

//显示窗体
winform.show();

//启动界面线程消息循环
win.loopMessage();

注意:

多行需要设置为 false 

效果演示:

演示代码:

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=318;bottom=138)
winform.add(
edit={cls="edit";left=39;top=25;right=271;bottom=52;edge=1;z=2};
edit2={cls="edit";left=39;top=67;right=270;bottom=94;edge=1;z=1}
)
/*}}*/

winform.edit.setCueBannerText("请输入用户名");
winform.edit2.setCueBannerText("请输入密码");

winform.show();
win.loopMessage();


相关回复


    暂无评论!

发表回复