代码编织梦想

事件过滤器eventFilter的使用

如果不提升控件,可以在控件的父对象中为控件安装事件过滤器,从而在父对象中处理子控件的事件;

在父对象源文件中:

//为控件安装事件过滤器
ui.pushButton->installEventFilter(this);
ui.pushButton_2->installEventFilter(this);

bool QtTest::eventFilter(QObject *w, QEvent *event)
{
	QMouseEvent *ev = static_cast<QMouseEvent *>(event);	//事件类型转换
	if (ev->type() == QEvent::MouseButtonPress)				//事件类型
	{
		if(ev->button() == Qt::LeftButton)					//鼠标按键
		{
			QString a = w->objectName();
		}
		
		return true;
	}

	QWidget::eventFilter(watched, event);
}

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/qq_36170958/article/details/111059909

8.QML Qt Quick Controls 2中常用的界面形式——堆叠式界面(StackView)-爱代码爱编程

堆叠式界面的实现的核心组件就是StackView。StackView是一个基于栈的导航浏览模型,可以与一组关联的页面一起使用。当用户浏览深层页面时,深层页面被推到栈顶,当用户选择返回时,之前浏览的页面会再次弹出。 堆叠式界面的效果 上述演示中,界面一共有四个:分别是home、profile、about和editprofile 上述四个界面中使用的

一次Config结果保存不成功的修复-爱代码爱编程

一次Config结果保存不成功的修复 背景 (Zynq)Arm,QT界面实现,测试人员发现,UI界面配置修改后,马上关机后重启,UI设置值不正确;启动过程中有一定概率出现卡顿。【(别人定制的系统和程序实现)配置显示使用QSetting实现】 Invetigation&Debug 1.文件系统只读问题 第一印象,这个问题简单,应该是保存完没

QT 5.15 QSslSocket::connectToHostEncrypted: TLS initialization failed 问题-爱代码爱编程

在QT5.12版本时候碰到这个问题复制对应文件夹下的libeay32.dll和ssleay32.dll即可, 升级到5.15时候发现这样还不够,需要再复制libcrypto-1_1.dll和libssl-1_1.dll文件。QT5.15安装只能用在线安装器,安装时吧OPENSSL也选上就会有后面两个文件了。另外5.15的文件目录结构也有所变化,例如我的工程

Qt实现一个支持QSS的Switch Button(开关按钮)-爱代码爱编程

目录 Qt实现一个支持QSS的Switch Button(开关按钮)问题解决思路实现方式其他不同的 Switch Button总结 Qt实现一个支持QSS的Switch Button(开关按钮) 本文会比较长,目的是为了提供一种实现自定义复杂控件的方式,对于使用 QSS 应用样式的项目可能会有帮助。 实现的过程会相对比较复杂和难理解,仅作为

PyQt常用控件的组合使用-爱代码爱编程

写作思路 这次使用到的空间有以下几种: 1、QPushButton 是我们之前用的按钮,也可以当作Toggle用 2、QCheckBox 3、QSlider 4、QCalendarWidget 5、QProgressBar 效果如下,可以改变QFrame的颜色,只有选中了对应Toggle才能改变对应的颜色通道,CheckBox可以控制Slider是否显示

Qt+OpenCV发布可执行程序(打包DLL文件)-爱代码爱编程

一、目的         OpenCV是最常用的开源视觉库,Qt是当前最常用的GUI开发框架,用他们做出的软件如果要在其他终端运行就需要提前打包,将依赖的环境连同程序一起打包成可执行文件,这里是使用添加DLL文件的方式,做出绿色版可执行文件,通过U盘直接将生成程序拷到其他电脑上可以直接使用。   二、解决方法 2.1 生成exe文件