标签:End GTextBox00000 ComboBox GList00001 NC lMainKey str && Designer2
原始的NC Designer2没有ComboBox控件,通过TextBox与ListBox组合实现该功能
实现原理:当ListBox控件创建时,TextBox显示ListBox的第0行的内容,当光标移动到TextBox时,ListBox设置为可访问状态,此时通过方向键选择选项,按下INPUT后把当前ListBox的内容设置到TextBox内,否则不可访问。
- GList00001要晚于GTextBox00000创建。
$GList00001-OnCreate string str ; GCSListAddString(-1,"GList00001","G05P1"); GCSListAddString(-1,"GList00001","G05P2"); GCSListAddString(-1,"GList00001","G05P10000"); GCSListAddString(-1,"GList00001","G05P20000"); GCSListGetListString(-1,"GList00001",0,str); GCSTextboxSetString(-1,"GTextBox00000",str); $End
- 光标在GTextBox00000时
$GTextBox00000-OnSetFocus GCSSetVisibleStatus(-1,"GList00001",1);//GList00001隐藏 $End
- 执行选择
$GTextBox00064-OnKeyPress long _lShiftKey; long _lCtrlKey; long _lMainKey; _lShiftKey = LUPARAM & H1; _lCtrlKey = LUPARAM & H2; _lMainKey = LLPARAM; if((0 == _lCtrlKey) && (0 == _lShiftKey) && (38 == _lMainKey)) @3 = GCSListGetCurrentSelect(-1,"GList00001"); @4 = @3-1; GCSListSetCurrentSelect(-1,"GList00001",@4); elseif((0 == _lCtrlKey) && (0 == _lShiftKey) && (40 == _lMainKey)) @3 = GCSListGetCurrentSelect(-1,"GList00001"); @4 = @3+1; GCSListSetCurrentSelect(-1,"GList00001",@4); elseif((0 == _lCtrlKey) && (0 == _lShiftKey) && (13 == _lMainKey)) GCSSetVisibleStatus(-1,"GList00001",0); endif; $End
- 更新数据
$GTextBox00000-OnTimer string str; GCSListGetListString(-1,"GList00001",@4,str); GCSTextboxSetString(-1,"GTextBox00000",str); $End
- 光标离开TextBox时
$GTextBox00000-OnKillFocus GCSSetVisibleStatus(-1,"GList00001",0); $End
标签:End,GTextBox00000,ComboBox,GList00001,NC,lMainKey,str,&&,Designer2 来源: https://www.cnblogs.com/Av1688/p/16446911.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。