概要:本期主要介绍Qt中QWidget类,以及它的常用属性和接口。
一、简介
1.头文件: #include<QWidget>
2.模块: QT += widget
3.功能:QWidget类是所有用户界面对象的基类,主要用于界面显示。之前我们在创建Qt项目时会选择创建QMainWindow、QWidget和QDialog三种窗口类型,QMainWIndow和QDialog都是QWidget派生的子类,应用在不用的场景中。此外,Qt程序中的控件如按钮(QPushButton)、文本框(QTextEdit)、单选框(QRadioCheck)等都是QWidget的子类。
一个widget对象如果它不存在一个父对象,那么它就是最顶层的显示窗口。对于这些顶层窗口,我们可以设置它的窗口标题、窗口图标等属性。

注:上图中的QGroupBox就是顶层窗口。
二、常用属性
1.acceptDrops | bool
接受拖放事件的属性,默认为false;
2.contextMenuPolicy | Qt::ContextMenuPolicy
菜单策略属性。
3.enabled | bool
是否可用属性,默认为true;
4.focusPolicy | Qt::FocusPolicy
焦点策略属性。
5.font | QFont
字体属性。
6.fullScreen | bool
是否设置全屏。
7.maximized | const bool
是否设置最大化。
8.minimized | const bool
是否设置最小化
9.sizePolicy | QSizePolicy
设置大小策略。
10.styleSheet | QString
样式表设置。
11.toolTip | QString
工具提示信息。
12.visible | bool
是否设置可见。
13.windowIcon | QIcon
窗口图标。
14.windowModality | Qt::WindowModality
窗口模态。
15.windowTitle | QString
窗口标题
三、常用接口
1.关闭、隐藏
QWidget w;
w.close();
w.setHidden(true);
w.setVisible(false);
2.菜单策略
void customContextMenuRequested(const Qpoint &pos)
{
}
3.显示
w.show();
w.setHidden(false);
w.setVisible(true);
4.释放、摧毁
w.destroy(true);
5.获取窗口ID
WId w = winId();
结尾:本期关于QWidget类的讲解就到这,接下来我们开始学习Qt控件类的相关知识。