2021-08-09 Qt相关函数

这篇博客介绍了Qt编程中的关键概念,如closeEvent()函数用于处理窗口关闭事件,以及如何保存用户设置。Qt的动作机制简化了菜单和工具栏的编程,通过创建和设置动作实现。QLabel类的方法如setAlignment()和setPixmap()用于文本和图像的显示。此外,还讨论了自定义窗口部件在Qt设计师中的集成,包括改进法和插件法。最后,提到了布局管理和Qt容器的使用。
摘要由CSDN通过智能技术生成

1.closeEvent();
void closeEvent(QCloseEvent* event);
closeEvent()函数是QWidget类中的一个虚函数,当用户关闭窗口时,这个函数会被自动调用。类MainWindow中重新实现了它,这样就可以向用户询问一个标准问题“Do you want to save your changes?”,并且可以把用户的一些偏好设置保存到磁盘中。

2.像File->New和Help->About这样的菜单项,在MainWindow中会被实现为私有槽。除了save()槽和saveAs()槽返回一个bool值以外,绝大多数的槽都把void作为它们的返回值。当槽作为一个信号的响应函数而被执行时,就会忽略这个返回值;但是当把槽作为函数来调用时,其返回值对我们的作用就和调用任何一个普通的C++函数时的作用是相同的。

3.Qt通过“动作”的概念简化了有关菜单和工具栏的编程。一个动作(action)就是一个可以添加到任意数量的菜单和工具栏的项。在Qt中,创建菜单和工具栏包括一下这些步骤:
@ 创建并且设置动作。
@ 创建菜单并且把动作添加到菜单上。
@ 创建工具栏并且把动作添加到工具栏上。

4.一种更为高级的提供上下文菜单方法是重新实现QWidget::contextMenuEvent()函数,创建一个QMenu窗口部件,在其中添加所期望的那些动作,并且再对该窗口部件调用exec()函数。

5.Qlabel类中的常用方法
setAlignment():
按固定值方式对其文本:

Qt.AlignLeft:水平方向靠左对其
Qt.AlignRight:水平方向靠右对其
Qt.AlignCenter:水平方向居中对其
Qt.AlignJustify:水平方向两端对齐
Qt.AlignTop:垂直方向靠上对齐
Qt.AlignBottom:垂直方向靠下对齐
Qt.AlignVCenter:垂直方向居中对其
setIndent():设置文本缩进值
setPixmap():设置label为一个Pixmap图片
text():获得Qlabel的文本内容
setText():设置Qlabel的文本内容
selectedText():返回所选择的字符串
setBuddy():设置Qlabel的助剂字符及buddy(伙伴)
setWordWrap():设置是否允许换行

Qlabel类中的常用信号
LinkActivated:当单机标签中嵌入的超链接,希望在新窗口中打开这个超链接是,setOpenExternalLinks特性不许设置为true
LinkHovered:当鼠标指针划过标签中嵌入的超链接时,需要用槽函数与这个信号进行绑定。

6.可以在Qt Solution(http://www.trolltech.com/products/qt/addon/solutions/catalog/4/)中或在商业或者非商业第三方(http://www.trolltech.com/products/qt/3rdparty/)查找是否存在可用的合适的窗口部件。

7.在Qt设计师中集成自定义窗口部件
在Qt设计师中使用自定义窗口部件之前,我们必须让Qt设计师先察觉到它们的存在。有两种方法可以完成这一任务:改进法(promotion)和插件法(plugin)。
改进法是最为快捷和简单的方法,改进法的缺点是:在Qt设计师中,无法对自定义窗口部件中的那些特定属性进行访问,并且也无法对这个窗口部件自身进行绘制。所有这两个问题都可以使用插件法得到解决。
插件法需要创建一个插件库,Qt设计师可以在运行时加载这个库,并且可以利用该库创建窗口部件的实例。

8.布局管理——在窗体中摆放窗口部件(6.1)
一共有三种基本方法用于管理窗体上子窗口部件的布局:绝对位置法、人工布局法、和布局管理器法

9.容器类
如果你已经非常熟悉STL容器并且在目标平台上STL是可用的,就没有必要再使用Qt容器了。有关STL类和函数的更多信息,对于初学者来讲,SGI的STL网站http://www.sgi.com/tech/stl/是一个好地方。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值