西门子840D二次开发输入框值变化事件处理
西门子840D二次开发所用到的是QT,不过他没有用QT单独的编译器,说到输入框的事件处理,如果对QT比较熟悉的人,直接采用QT的信号和槽就可以了,如果不熟悉请往下看。
1、将新建好(新建项目的过程请看前面的文章)项目中sloem2dialog.xml文件的formpanel改为"FullForm",如下代码,可以使界面铺满整个数控系统的屏幕。
<!DOCTYPE HMI_DIALOG_CONFIGURATION>
<DIALOGUI defaultscreen="asloem2screen" screenlayout="sloem2screenlayout.sloem2ScreenLayout" panellayout="StandardLayout" textfile="sloem2dialog" textcontext="sloem2dialog"><SCREEN implementation="sloem2.asloem2screen" name="asloem2screen"><FORM implementation="sloem2.sloem2form" name="sloem2form" formpanel="FullForm"/><MENU name="hu" softkeybar="hu"><SOFTKEY position="1"><PROPERTY name="textID" type="QString">SL_SLOEM2</PROPERTY><FUNCTION name="doNothing" args="" /></SOFTKEY></MENU></SCREEN>
</DIALOGUI>
2、在如下图位置打开Designer 软件
3、点击打开,在对话框中选中项目中的sloem2form.ui文件,如图:
4、在左侧工具栏中找到控件拖入界面中如图:并点击保存。
5、回到VS2008,在sloem2form.h文件中添加如下代码:一定要放在sloem2form类中
public slots:void value_chang(QWidget*);
6、在sloem2form.cpp对构造函数添加代码,并实现 value_chang函数,最后代码如下:
sloem2form::sloem2form(QWidget* pParent, const QString& rszName): SlGfwDialogForm(pParent, rszName)
{setupUi(this);//lineEdit22为第四步控件的名称,valueChanged(QWidget*)为要触发的信号,value_chang(QWidget*)我们上一步创建的槽函数
QObject::connect(lineEdit22,SIGNAL(valueChanged(QWidget*)),this,SLOT(value_chang(QWidget*)));
} // <-- sloem2form::sloem2form ()void sloem2form::value_chang(QWidget*)//对槽函数的实现,如果不能用QMessageBox,可以添加#include <qmessagebox.h>头文件
{QMessageBox::information(this,QString("Tips!"),QString("Value change!"));
}
7、运行项目在输入框中随便输入内容,按下回车键,将出现提示如图:
注:该内容用到的QT信号槽技术在这里不做赘述,网上有很多,讲的非常好。
Qt信号与槽原理_黄邦勇帅的博客-CSDN博客_qt信号与槽机制原理
西门子840D二次开发输入框值变化事件处理相关推荐
- 实时监听输入框值变化的完美方案:oninput onpropertychange
实时监听输入框值变化的完美方案:oninput & onpropertychange 原文:实时监听输入框值变化的完美方案:oninput & onpropertychange 在 W ...
- jquery实时监听输入框值变化
在做web开发时候很多时候都需要即时监听输入框值的变化,以便作出即时动作去引导浏览者增强网站的用户体验感.而采用onchange时间又往往是在输入框失去焦点(onblur)时候触发,有时候并不能满足条 ...
- dsf5.0二次开发输入框监听,其他类似
监听输入框时候 {"@keyup":"inpKeyup","@change":"inpChange"} methods: ...
- 西门子840DSL二次开发简介
写在前面 前段时间有朋友问到840DSL的二次开发,小编抽时间总结了下,感兴趣的小伙伴可以听小编介绍下这个受众人群相对比较少的西门子840DSL数控系统的二次开发.这篇是介绍原理性质的文章,先从原理讲 ...
- jq校验输入框值变化时_谈谈自己对CRC校验的理解
1.CRC是用来干嘛的? 检测数据传输过程中是否出现错误(某些位,或某几位,或者某块区域位错误). 2.CRC是否能校正数据传输中的错误? CRC只能检错,不能纠错.如果发现错误,可根据双方协议规定要 ...
- js实时监听input输入框值的变化以便即使匹配搜索项
问题说明 在含有搜索框的网页中,经常需要及时匹配搜索项,因此需要监听input输入框的变化事件.如果使用 onkeydown.onkeypress.onkeyup 这个几个键盘事件来监测的话,除了监听 ...
- vue input只能输入正整数_前端开发:Vue中获取input输入框值的方法
在前端开发过程中,会用到各种各样的基础组件,一些常用的组件的使用方法一定要滚熟于心,对于刚入门的新手来说,对基础知识的熟练掌握很重要,如果不熟练就会影响开发速度.那么本篇博文就来分享一个比较基础的知识 ...
- angular监听输入框值的变化_angular 实时监听input框value值的变化触发函数方法
用angulajs + ionic 做了一个登陆页面.效果要通过监听输入框的变化来判断登陆按钮是否可点击.当至少一个输入框为空时登录按钮不可点击.一开始是用的jquery的方法做的,后来发现刷新当前页 ...
- NX二次开发-UFUN读取属性的值UF_ATTR_read_value
在UG/NX二次开发中,我们与属性相关的函数都在UF_ATTR这个头文件里面, 其中读取属性的值UFUN函数是UF_ATTR_read_value 下面一个例子来介绍,这个API是怎么使用的. NX9 ...
最新文章
- CentOS上安装 jdk
- WPF的Timer控件的使用
- linux 内核链表遍历宏 list_for_each_entry list_for_each_entry_safe
- 关于安装VS2010过程中的错误
- python中统计列表各个元素的个数
- 白话Elasticsearch41-深入聚合数据分析之案例实战__过滤+聚合:统计价格大于2000的电视平均价格
- http头部content-type与数据格式
- Java多线程-CountDownLatch用法
- Spring定时任务高级使用篇
- 如何使用Python玩转PDF各种骚操作?你看了就知道。
- 高中计算机会考操作试题,高中信息技术会考(上机操作题要点)
- 局部语义地图构建——HDMapNet
- 一年多推行每日构建的经验总结
- STM32F4应用-串口通信
- oracle完整的练习,2021史上最全Oracle数据库基本操作练习题(含答案).docx
- 键盘快捷键使用,背熟这些你就无需再用鼠标了!
- 教你三分钟用docker compose搭建一个自己的个人博客网站
- Android 之路20---Java基础14
- Android Bitmap 像素格式与字节数组
- Xbox One 升级后黑屏修复
热门文章
- 单目标应用:求解单仓库多旅行商问题(Single-Depot Multiple Travelling Salesman Problem, SD-MTSP)的人工兔优化算法ARO
- 计算机打印要先安装驱动吗,打印机驱动怎么安装,教您打印机驱动怎么安装
- ERROR 1146 (42S02): Table ‘xxxxxxx‘ doesn‘t exist模拟删表删库恢复
- 基于图模型的HMI 设计
- php教程--案例10(网页布局)
- HTML+JS+websocket 实现联机“游戏王”对战(五)- 卡片选中系统
- [量子计算-001]用一个例子解释量子计算
- 银河麒麟服务器操作系统安装VMware Tool
- project 2007 sn
- 408数据结构综合题