Qt4--可变形状对话框(对 ui 的多重继承)
来源:互联网 发布:听新闻软件下载 编辑:程序博客网 时间:2024/06/05 03:51
最终效果(单击【More】显示其余对话框)
创建过程
1、创建一个“Dialog without Button”模板
2、创建按钮如下图所示
3、按下【ctrl】,然后单击并拖动Primary Key群组,这样可以复制出一个群组,设置以后如下所示
4、设置两个垂直分隔符的sizeHint为【20,0】,并点击Adjust Size,如下所示
创建好以后对应部件名称如下所示:
5、创建Tab顺序
6、编辑signals/slots
okButton 的 clicked() 链接 对话框 accept()
cancelButton 的 clicked() 链接 对话框 reject()
moreButton 的 clicked() 链接 secondaryGroupBox 的 setvisible(bool)
moreButton 的 clicked() 链接 tertiaryGroupBox 的 setvisible(bool)
7、多重继承
ui保存为sortdialog.ui
首先定义sortdialog.h头文件,继承自QDialog 和 Ui::SortDialog
#ifndef SORTDIALOG_H#define SORTDIALOG_H#include<QDialog>#include"ui_sortdialog.h"class SortDialog:public QDialog, public Ui::SortDialog{ Q_OBJECTpublic: SortDialog(QWidget* parent = 0); void setColumnRange(QChar first, QChar last);};#endif // SORTDIALOG_H
其次,sortdialog.cpp文件,实现具体的函数功能
#include<QtGui>#include"sortdialog.h"SortDialog::SortDialog(QWidget* parent):QDialog(parent){ setupUi(this); secondaryGroupBox->hide(); tertiaryGroupBox->hide(); layout()->setSizeConstraint(QLayout::SetFixedSize); setColumnRange('A', 'Z');}void SortDialog::setColumnRange(QChar first, QChar last){ primaryColumnComboBox->clear(); secondaryColumnComboBox->clear(); tertiaryColumnComboBox->clear(); secondaryColumnComboBox->addItem(tr("None")); tertiaryColumnComboBox->addItem(tr("None")); primaryColumnComboBox->setMinimumSize(secondaryColumnComboBox->sizeHint()); QChar ch = first; while(ch <= last) { primaryColumnComboBox->addItem(QString(ch)); secondaryColumnComboBox->addItem(QString(ch)); tertiaryColumnComboBox->addItem(QString(ch)); ch = ch.unicode() + 1; }}
构造函数隐藏对话框的第二键和第三键;两个部分。
有关窗体布局的sizeConstruct属性设置为QLayout::SetFixedSize,这样使用户不能修改这个对话框窗体的大小。
这样,布局就会负责对话框重新定义大小的职责,并且会在显示或者隐藏窗口部件的时候自动重新定义对话框大小,
从而保证对话框以最佳的尺寸显示。
最后,定义用于测试的主函数main.cpp
#include<QApplication>#include"sortdialog.h"int main(int argc, char* argv[]){ QApplication app(argc, argv); SortDialog* dialog = new SortDialog; dialog->setColumnRange('C','F'); dialog->show(); return app.exec();}
- Qt4--可变形状对话框(对 ui 的多重继承)
- 可变形状的对话框(Shape-Changing Dialog)
- 《C++ GUI Qt4 编程(第二版)》2.4改变形状的对话框 练习源码
- Qt4之UI进度条对话框
- 改变形状的对话框
- 改变形状的对话框
- 能改变形状的对话框
- Qt 改变形状的对话框
- 《认知与设计——理解UI设计准则》笔记(8) 对注意力、形状、思考以及行动的限制
- 多重继承出现的问题(1)
- 多重继承出现的问题(2)
- 多重继承的基本概念
- 多重继承的优缺点
- C++的多重继承
- 多重继承的优缺点
- 多重继承的优缺点
- 多重继承的优缺点
- 类的多重继承
- 黑马程序员---String与StringBuffer
- Linux经典书籍推荐
- Firefox 22 全面支持浏览器3D图像和视频对话
- Uncompressing Linux... done, booting the kernel
- 正则获取html中图片路经
- Qt4--可变形状对话框(对 ui 的多重继承)
- struts2的文件上传(0):struts2的文件上传并且上传目录可动态配置
- 无相连通图的生成树个数
- Suduku
- Android4.0Sd卡移植之使用vold自动挂载sd卡
- 请342625199512182110身份证失主与我联系:13951853740
- DDOS软件使用教程以及工具包下载 网站渗透 和攻击
- boost库在工作(31)网络服务端之一
- Spring攻略笔记-8 AspectJ支持