QT一些函数和需要记忆的一些东西
- QT一些函数和需要记忆的一些东西
- Qt::WindowFlags的枚举类型
- 窗口几何布局
- 调试问题(Interacting with the Debugger和Debugging the Example Application)
- 各类对话框
- QSizePolicy类大小策略的取值
- 表单布局管理器相关属性说明
- QLayout类的大小约束属性的取值
- 信号和槽关联类型表
Qt::WindowFlags的枚举类型
内容 | 值 | 具体意义 |
---|---|---|
Qt::widget | 0x00000000 | 默认值 |
Qt::window | 0x00000001 | window,通常有一个window框架并且有个标题栏 |
Qt::Dialog | 0x00000002|Window | 对话框 |
Qt::Sheet | 0x000000004|Window | Mac表格 |
Qt::Drawer | Sheet | Dialog |
Qt::Popup | 0x00000008|Window | 弹出窗体 |
Qt::Tool | Popup|Dialog | 工具窗口 |
Qt::ToolTip | Popup|Sheet | 工具提示功能 |
Qt::SplashScreen | ToolTip|Dialog | a splash screen(见QSplashScreen),一个欢迎界面 |
Qt::Desktop | 0x00000010|Window | 代表该部件为一个桌面,QDesktopWidget |
Qt::SubWindow | 0x00000012 | sub-window,是一个QMdiSubWindow |
Qt::ForeignWindow | 0x00000020|Window | 表示该窗口是由其他程序创建或者通常使用本地编码 |
Qt::CoverWindow | 0x00000040|Window | Cover窗口,当程序最小化时会出现 |
Qt::MSWindowsFixedSizeDialogHint | 0x00000100 | 很薄的边框 |
Qt::MSWindowsOwnDC | 0x00000200 | 给予上下文 |
窗口几何布局
函数 | 说明 |
---|---|
x() | 应用程序最左上角的x值(包含框架) |
y() | 应用程序最左上角的y值(包含框架) |
pos() | 应用程序最左上角的位置(包含框架) |
frameGeometry() | 应用程序的长宽(包含框架) |
move() | 应用程序的移动值 |
geometry() | 长宽(不包含框架) |
width() | 宽度(不包含框架) |
height() | 高度(不包含框架) |
rect() | 返回程序所在的正方形(不包含框架) |
size() | 返回程序的大小(不包含框架) |
调试问题(Interacting with the Debugger和Debugging the Example Application)
需求 | 方法效果 |
---|---|
设置断点在相应行最前方点击 | 在相应行最前方点击,会看到一个红色的圆圈 |
开始调试 | 按下F5,或者点击调试按钮 |
继续按钮 | 恢复正常运行,直到遇到下一个断点,或者程序结束 |
停止调试按钮 | 结束调试 |
单步跳过按钮 | 直接执行本行代码,然后指向下一行代码 |
单步进入按钮 | 进入调用的函数内部或按下F11 |
单步跳出按钮 | 进入函数内部时,可直接跳出该函数 |
查找函数或者类 | 点击对应的函数或者类然后按下F2 |
输出对应的信息 | qDebug()函数 |
各类对话框
- 颜色对话框
方法 | 解释 |
---|---|
getColor(const QColor &initial=Qt::white,QWidget *parent=Q_NULLPTR, const QString &title=QString(), ColorDialogOptions options = ColorDialogOptions) | 第一个参数为初始颜色,第二个是对应的父窗口,第三个参数为对话框标题,第四个暂时不太清楚,该函数用来获取颜色 |
QColorDialog dialog(QColor,QWidget) | 第一个参数为初始颜色,第二个参数为父窗口,创建一个颜色对话框 |
setOption(QColorDialog::ShowAlphaChannel) | 显示alpha选项 |
exec() | 以模态方式运行对话框 |
currentColor() | 获取当前颜色 |
2. 文件对话框
方法 | 解释 |
---|---|
QFileDialog::getOpenFileName(QWidget,tr(“”),”“,tr() | 第一个参数父类窗口,第二个参数对话框标题,第三个参数默认路径,第四个参数文件类型,获取相应文件名(包含路径) |
getSaveFileName() | 保存文件对话框和文件另存为对话框 |
getExistingDirectory() | 获取一个已存在的文件夹路径 |
3. 字体对话框
方法 | 解释 |
---|---|
QFontDialog::getFont(bool,QWidget) | 第一个参数是否选择了字体,第二个参数父类窗口 |
4. 输入对话框
方法 | 解释 |
---|---|
QInputDialog::getText(QWidget,tr(),tr(),QLineEdit::Normal,tr(),bool) | 第一个参数为父类窗口,第二个是对话框标题,第三个是对话框提示,第四个是text的初始值,第三个…,第四个是是否输入 |
QInputDialog::getInt() | 获取整数 |
QInputDialog::getDouble() | 获取浮点数 |
QInputDialog::getItem() | 获取条目 |
5. 消息对话框
方法 | 解释 |
---|---|
QMessageBox::question(QWidget,tr(),tr()) | 问题对话框 |
QMessageBox::information() | 提示对话框 |
QMessageBox::warning() | 警告对话框 |
QMessageBox::critical() | 错误对话框 |
QMessageBox::about() | 关于对话框 |
6. 进度对话框
方法 | 解释 |
---|---|
QProgressDialog dialog(tr(),tr(),sec,sec,Qwidget) | 创建 |
setWindowTitle() | 设置标题 |
setWindowModality() | 设置模态或者非模态 |
7. 错误信息对话框
方法 | 解释 |
---|---|
QErrorMessage *dialog() = new QErrorMessage() | 创建 |
setWindowTitle() | 设置标题 |
showMessage() | 显示消息 |
8. 向导对话框
方法 | 解释 |
---|---|
QWizardPage *page = new QWizardPage | 创建 |
QWizard wizard() | 创建QWizard |
addPage() | 添加页 |
QSizePolicy类大小策略的取值
常量 | 描述 |
---|---|
QSizePolicy::Fixed | 只能使用sizeHint()提供的值,无法伸缩 |
QSizePolicy::Minimum | sizeHint()提供的大小是最小的,部件可以被拉伸 |
QSizePolicy::Maximum | sizeHint()提供的是最大大小,部件可以被压缩 |
QSizePolicy::Preferred | sizeHint()提供的大小是最佳大小,部件可以伸缩 |
QSizePolicy::Expanding | sizeHint()提供的是合适的大小,部件可以被压缩,不过倾向于拉伸 |
QSizePolicy::MinimumExpanding | sizeHint()提供的大小是最小的,部件倾向于被拉伸 |
QSizePolicy::Ignored | sizeHint()被忽略,部件将尽可能的被拉伸来获取更多的空间 |
表单布局管理器相关属性说明
属性 | 说明 | 值 | 说明 | |
---|---|---|---|---|
layoutFieldGrowthPolicy | 指定部件大小变化方式 | AllNonFixedFieldsGrow | 所有部件都被拉伸 | |
FieldsStayatSizeHint | 所有部件都是用sizeHint()提供的大小 | |||
ExpandingFieldsGrow | 大小策略为Expanding的部件会被拉伸 | |||
layoutRowWrapPolicy | 设置是否换行,如果需要换行,则是将输入部件放到相应的标签下面 | DontWrapRows | 不换行,默认值 | |
WrapLongRows | 较长的行进行换行 | |||
WrapAllRows | 大小策略为ng的部件会被拉伸 | |||
layoutLabelAlignment | 设置标签对齐方式 | 水平方向 | AlignLeft | 左对齐 |
AlignRight | 右对齐 | |||
AlignHCenter | 水平居中对齐 | |||
AlignJustify | 两端对齐 | |||
垂直方向 | AlignTop | 向上对齐 | ||
AlignBottom | 向下对齐 | |||
AlignVCenter | 垂直居中对齐 | |||
layoutFormAlignment | 设置部件在表单中的对齐方式 | 同layoutLabelAlignment属性 | 同layoutLabelAlignment属性 |
QLayout类的大小约束属性的取值
常量 | 描述 |
---|---|
QLayout::SetDefaultConstraint | 主窗口大小设置为minimumSize()的值,除非该部件已经有一个最小大小 |
QLayout::SetFixedSize | 主窗口大小设置为sizeHint()的值,它无法改变大小 |
QLayout::SetMinimumSize | 主窗口最小大小设置为minimumSize()的值,它无法再缩小 |
QLayout::SetMaximumSize | 主窗口最大大小设置为maximumSize()的值,它无法再放大 |
QLayout::setMinAndMaxSize | 设置最大最小 |
QLayout::SetNoConstraint | 部件不被约束 |
信号和槽关联类型表
常量 | 描述 |
---|---|
Qt::AutoConnection | 如果信号和槽在不同的线程中,同Qt::QueuedConnection;如果在,则同Qt::DirectConnection |
Qt::DirectConnection | 发射完信号后立即执行槽,只有槽执行完成返回后,发射信号处后面的代码才可以执行 |
Qt::QueuedConnection | 接收部件所在线程的事件循环返回后再执行槽,无论槽执行与否,发射信号处后面的代码都会立即执行 |
Qt::BlockingQueuedConnection | 类似Qt::QueuedConnection,只能用在信号和槽在不同线程的情况下 |
Qt::UniqueConnection | 类似Qt::AutoConnection,但是两个对象间的相同的信号和槽只能有唯一的关联 |
Qt::AutoCompatConnection | 类似Qt::AutoConnection,它是Qt3中的默认类型 |