这一章我们继续讲Qt事件——事件的传递

1、创建工程

工程目录如下所示:

创立工程testEvent,主窗口文件以mainwindow命名,子文件以lineedit命名。

2、修改程序

首先将lineedit.h文件内容修改如下:

这里主要是添加了keyPressEvent()函数的声明。下面转到lineedit.cpp文件中。文件内容如下:

lineedit.cpp主要就是对lineedit.h的具体实现。下面进入mainwindow.h,内容如下:

红框是值得注意增加的内容,然后进入mainwindow.cpp文件中,添加内容如下:

红框分别是添加的代码代码。当然要注意头文件。

这里自定义了一个Lineedit类,它集成自QLineedit类,,然后再MainWindow中添加一个Lineedit部件。分别实现了Lineedit类和MainWindow类的键盘按下事件处理函数。

3、执行程序

下面运行程序,在窗口中按下任意按键,如回车,输出栏输出:

说明此时只有LineEdit类的键盘按下事件处理函数运行了,在lineedit.cpp文件的keyPressEvent()函数最后一行添加代码:

event->ignore();

此时应用输出:

要想输出栏能正常输出数字,在lineedit.cpp文件的keyPressEvent()前面添加默认事件处理函数即可。

4、分析结论:

这个例子中事件处理方式是采用重写部件的keyPressEvent()函数来实现。

事件是先传递给指定窗口部件(Lineedit类焦点部件)。如果该部件忽略掉该事件,那么事件就会传递给这个部件的父部件(MainWindow类)。

qt为lineedit添加背景图片代码_Qt中事件的理解(2)相关推荐

  1. Qt之按钮添加背景图片的几种方法

    注意:图片必须被添加到项目的资源文件中 1.通过UI界面添加,找到样式表(stylesheet)选项,点进去选择添加资源,这里有三个选项,分别是backgound-image.border-image ...

  2. maui,gird添加背景图片

    maui gird添加背景图片,跟wpf中不大一样,其实更加简单粗暴 <Grid><Image Source="login_background.png" Asp ...

  3. Qt中添加背景图片的方法

    Qt中添加背景图片的方法 QPalette的方法 #include #include int main(int argc, char *argv[]) { QApplication app(argc, ...

  4. QT简单添加背景图片

    简介:使用QT制作STM32控制器时,为了美化添加了简单背景图片,点击按钮弹出相应图片.此次主要介绍添加背景及弹出图片部分,此次没有和STM32连接所以部分功能没有展示,仅截取与图片相关部分.(此方法 ...

  5. css代码添加背景图片常用代码

    css代码添加背景图片常用代码 1 背景颜色 {background-color:数值} 2 背景图片 {background-image: url(url)|none} 3 背景重复 {backgr ...

  6. 简历背景图片设置html代码,怎么在简历中添加背景图片

    在简历中添加背景图片的方法二 步骤1.在菜单栏选择图片->自来文件->选择图片后->确定; 步骤2.选图片->右键-->设置图片格式->版式->衬于文字下方; ...

  7. jsp中给div加背景_html中给元素添加背景图片或者gif动图

    添加背景图片有四种常用的方式,分别是: repeat    完全平铺 repeat-x    横向平铺 repeat-y    纵向平铺 no-repeat    不平铺 使用示例: Document ...

  8. java 添加图片背景_java添加背景图片

    总结:我们通常实现添加背景图片很容易,但是再添加按钮组件就会覆盖图片.原因是: 有先后啊.setlayout();与布局有很大关系 请调试代码的时候,仔细揣摩.我晕了 还可以添加文本框,密码框 fra ...

  9. .net的label的背景如何设置成为透明_css如何设置背景图片?background属性添加背景图片...

    在前端开发过程中,为了页面的美观,往往都会给html页面添加背景图片.那么如何利用css设置html中用图片做背景?本章就给大家介绍css怎样设置背景图片.有一定的参考价值,有需要的朋友可以参考一下, ...

最新文章

  1. 关于字符串的分割问题
  2. MyEclipse2014 破解图文教程
  3. 150亿参数大杀器!Facebook开源机器翻译新模型,同传人员或失业
  4. MacBookProM1 重置的注意事项
  5. ORMLite框架 的使用方法---给你的数据库操作插上翅膀
  6. List集合存入int类型值1,remove(1)方法按下标还是按对象删除信息
  7. 如何有效开展小组教学_新型教学方法,小组合作教学,有效的提升了学生的合作技能...
  8. XMLHTTP---介绍
  9. 报 java.lang.ExceptionInInitializerError 的常见解决方法
  10. roseha 8.9 for linux oracle 11g,RoseHA 9.0 for Linux配合Oracle12c配置文档_v2.0-2015-04.pdf
  11. springboot整合fluent-mybatis,报错“...is not a @FluentMybatis Entity or it‘s Mapper not defined as bean.”
  12. Jenkins修改Job工作空间、修改日志路径
  13. 什么是 SRS 呢?在我们大部分的音频播放器里都内欠有这种音效。
  14. 如何网页中嵌入谷歌地图
  15. 2023年英文科技论文写作与学术报告-期末考试
  16. 微信小程序开发价格标准是什么?
  17. 从产品经理能力评估维度,掌握产品经理技能
  18. PHP实现基于文本的莫斯电码生成器
  19. 北京邮电大学计算机学院交换组,2021北京邮电大学计算机学院网络与交换技术国家重点实验室招聘1人公告(劳务派遣)...
  20. 传音控股过会:核心技术说服力低 仍缺乏长期护城河

热门文章

  1. Hadoop记录-hadoop2.x常用端口及定义方法
  2. tar包在linux下 java安装
  3. matlab相机标定畸变参数,相机标定的原理与意义及OpenCVMatlab实现差异小结.doc
  4. 微课|中学生可以这样学Python(例5.4):计算决赛现场选手得分
  5. “Python编程及大数据应用”课程教师(厦门)寒假研修班
  6. Python3.6下安装扩展库pywin32的正确姿势
  7. Python+pandas读取Excel文件并统计演员参演电影数量
  8. 使用Python字符串的编码与解码方法实现信息加解密
  9. 几行Python代码打造自己的磁盘垃圾文件清理器
  10. 一个完整网页代码HTML和CSS,第一个网页(HTML/CSS)