qt对话框

qt对话框

相 关 类类 说 明静 态 函 数函 数 说 明
QFileDialog类标准文件对话框getOpenFileName获得用户选择的文件名
getSaveFileName获得用户保存的文件名
getExistingDirectory获得用户选择的已存在的目录名
getOpenFileNames获得用户选择的文件名列表
QColorDialog类标准颜色对话框getColor获得用户选择的颜色值
QFontDialog类标准字体对话框getFont获得用户选择的字体
QInputDialog类标准输入对话框getText标准字符串输入对话框
getItem下拉表条目输入框
getIntint类型数据输入对话框
getDoubledouble类型数据输入对话框
QMessageBox类消息对话框QMessageBox::questionQuestion消息框
QMessageBox::informationInformation消息框
QMessageBox::warningWarning消息框
QMessageBox::criticalCritical消息框
QMessageBox::aboutAbout消息框
QMessageBox::aboutQtAbout Qt消息框

工具盒

QToolBox 继承自QFrame

QGroupBox *groupBox2=new QGroupBox;
Drawer::Drawer(QWidget *parent, Qt::WindowFlags f):QToolBox(parent,f)
{
    setWindowTitle(tr("My QQ"));           				//设置主窗体的标题
    toolBtn1_1 =new QToolButton;						//(a)
    toolBtn1_1->setText(tr("张三"));						//(b)
    toolBtn1_1->setIcon(QPixmap("11.png"));				//(c)
    toolBtn1_1->setIconSize(QPixmap("11.png").size());	//(d)
    toolBtn1_1->setAutoRaise(true);						//(e)
    toolBtn1_1->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);//(f)
    toolBtn1_2 =new QToolButton;
    toolBtn1_2->setText(tr("李四"));
    toolBtn1_2->setIcon(QPixmap("12.png"));
    toolBtn1_2->setIconSize(QPixmap("12.png").size());
    toolBtn1_2->setAutoRaise(true);
    toolBtn1_2->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    toolBtn1_3 =new QToolButton;
    toolBtn1_3->setText(tr("王五"));
    toolBtn1_3->setIcon(QPixmap("13.png"));
    toolBtn1_3->setIconSize(QPixmap("13.png").size());
    toolBtn1_3->setAutoRaise(true);
    toolBtn1_3->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    toolBtn1_4 =new QToolButton;
    toolBtn1_4->setText(tr("小赵"));
    toolBtn1_4->setIcon(QPixmap("14.png"));
    toolBtn1_4->setIconSize(QPixmap("14.png").size());
    toolBtn1_4->setAutoRaise(true);
    toolBtn1_4->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    toolBtn1_5 =new QToolButton;
    toolBtn1_5->setText(tr("小孙"));
    toolBtn1_5->setIcon(QPixmap("155.png"));
    toolBtn1_5->setIconSize(QPixmap("155.png").size());
    toolBtn1_5->setAutoRaise(true);
    toolBtn1_5->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    QGroupBox *groupBox1=new QGroupBox;				//(g)
    QVBoxLayout *layout1=new QVBoxLayout(groupBox1);//(h)
    layout1->setMargin(10);                         //布局中各窗体的显示间距
    layout1->setAlignment(Qt::AlignHCenter);        //布局中各窗体的显示位置
    //加入抽屉内的各个按钮
    layout1->addWidget(toolBtn1_1);
    layout1->addWidget(toolBtn1_2);
    layout1->addWidget(toolBtn1_3);
    layout1->addWidget(toolBtn1_4);
    layout1->addWidget(toolBtn1_5);
    //插入一个占位符
    layout1->addStretch();                          //(i)
    toolBtn2_1 =new QToolButton;
    toolBtn2_1->setText(tr("小王"));
    toolBtn2_1->setIcon(QPixmap("21.png"));
    toolBtn2_1->setIconSize(QPixmap("21.png").size());
    toolBtn2_1->setAutoRaise(true);
    toolBtn2_1->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    toolBtn2_2 =new QToolButton;
    toolBtn2_2->setText(tr("小张"));
    toolBtn2_2->setIcon(QPixmap("22.png"));
    toolBtn2_2->setIconSize(QPixmap("22.png").size());
    toolBtn2_2->setAutoRaise(true);
    toolBtn2_2->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    QGroupBox *groupBox2=new QGroupBox;
    QVBoxLayout *layout2=new QVBoxLayout(groupBox2);
    layout2->setMargin(10);
    layout2->setAlignment(Qt::AlignHCenter);
    layout2->addWidget(toolBtn2_1);
    layout2->addWidget(toolBtn2_2);
    toolBtn3_1 =new QToolButton;
    toolBtn3_1->setText(tr("小陈"));
    toolBtn3_1->setIcon(QPixmap("31.png"));
    toolBtn3_1->setIconSize(QPixmap("31.png").size());
    toolBtn3_1->setAutoRaise(true);
    toolBtn3_1->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    toolBtn3_2 =new QToolButton;
    toolBtn3_2->setText(tr("小李"));
    toolBtn3_2->setIcon(QPixmap("32.png"));
    toolBtn3_2->setIconSize(QPixmap("32.png").size());
    toolBtn3_2->setAutoRaise(true);
    toolBtn3_2->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
    QGroupBox *groupBox3=new QGroupBox;
    QVBoxLayout *layout3=new QVBoxLayout(groupBox3);
    layout3->setMargin(10);
    layout3->setAlignment(Qt::AlignHCenter);
    layout3->addWidget(toolBtn3_1);
    layout3->addWidget(toolBtn3_2);
    //将准备好的抽屉插入ToolBox中
    this->addItem((QWidget*)groupBox1,tr("我的好友"));
    this->addItem((QWidget*)groupBox2,tr("陌生人"));
    this->addItem((QWidget*)groupBox3,tr("黑名单"));
}

在这里插入图片描述

QProgressBar 进度条

有设置为纵向的方法

过setOrientation(Qt:Qt::Vertical)

在这里插入图片描述

QPalette类

改变控件颜色

在这里插入图片描述

在本节中详细介绍QPalette类的使用方法,该类有两个基本的概念:一个是ColorGroup,另一个是ColorRole。其中,ColorGroup指的是以下三种不同的状态。
 QPalette::Active:获得焦点的状态。
 QPalette::Inactive:未获得焦点的状态。
 QPalette::Disable:不可用状态。
QPalette类使用最多、最重要的函数是setColor()函数,其原型如下:
void QPalette::setColor(ColorGroup group,ColorRole role,const QColor & color);
对主题颜色进行设置的同时,还区分了状态,即对某个主题在某个状态下的颜色进行了设置:
void QPalette::setColor(ColorRole role,const QColor & color);

QPalette类同时还提供了setBrush()函数,通过画刷的设置对显示进行更改,这样就有可能使用图片而不仅是单一的颜色来对主题进行填充。Qt之前的版本中有关背景色设置的函数如setBackgroundColor()或前景色设置的函数如setForegroundColor()在Qt 5中都被废止,统一由QPalette类进行管理。例如,setBackgroundColor()函数可由以下语句代替:
xxx->setAutoFillBackground(true);
QPalette p = xxx->palette();
p.setColor(QPalette::Window,color);//p.setBrush(QPalette::Window,brush);
xxx->setPalette§;

QTimer

为便于显示,toString()函数的参数需指定转换后时间的显示格式。
 H/h:小时(若使用H表示小时,则无论何时都以24小时制显示小时;若使用h表示小时,则当同时指定AM/PM时,采用12小时制显示小时,其他情况下仍采用24小时制进行显示)。
 m:分钟。
 s:秒钟。
 AP/A:显示AM或PM。
 Ap/a:显示am或pm。
可根据实际显示需要进行格式设置,例如:
hh:mm:ss A 22:30:08 PM
H:mm:s a 10:30:8 pm
QTime的toString()函数也可直接利用Qt::DateFormat作为参数指定时间显示的格式,如Qt::TextDate、Qt::ISODate、Qt::LocaleDate等。

可扩展对话框

在这里插入图片描述

不规则窗体

在这里插入图片描述

程序启动画面(QSplashScreen)

{
    QApplication a(argc, argv);
    QPixmap pixmap("Qt.png");				//(a)
    QSplashScreen splash(pixmap);			//(b)
    splash.show();							//显示此启动图片
    //注意这个
    a.processEvents();						//(c)

    MainWindow w;
    w.show();
    splash.finish(&w);						//(e)
    return a.exec();
}
(a) QPixmap pixmap("Qt.png"):创建一个QPixmap对象,设置启动图片(这里设置为Qt的图标“Qt.png”)。
(b) QSplashScreen splash(pixmap):利用QPixmap对象创建一个QSplashScreen对象。
(c) a.processEvents():使程序在显示启动画面的同时仍能响应鼠标等其他事件。
(d) MainWindow w、w.show():正常创建主窗体对象,并调用show()函数显示。
(e) splash.finish(&w):表示在主窗体对象初始化完成后,结束启动画面。

qt5.12学习笔记,仅此记录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值