文章目录
- 一、QDebug类和QMessagebox类
- (一)QDebug类:打印调试类
- (二)QMessagebox类:弹窗类
- 2. 修改组件图标
- (1)通过ui界面
- (2)通过QIcon的方式
- (3)通过QPixmap类
- 3. 使用示例
- (1)实例化对象实现
- 2. 静态函数版本
- 二、颜色对话框和字体对话框类
- (一)QColorDialog
- (二)QFontDialog
- 三、资源文件
- (一)添加资源文件
- (二)添加图标的方式
一、QDebug类和QMessagebox类
(一)QDebug类:打印调试类
//头文件
#include <QDebug>
(二)QMessagebox类:弹窗类
头文件:
#include <QMessagebox>第一种方式:实例化对象版本
QMessageBox::QMessageBox(QMessageBox::Icon icon, ---- 图标const QString &title, ---- 标题const QString &text, ---- 文本信息QMessageBox::StandardButtons buttons = NoButton, ---- 按钮QWidget *parent = nullptr, ---- 父亲Qt::WindowFlags f = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint) --- 默认值(不用不给即可)第二种方式:静态函数版本
[static]------静态版本
QMessageBox::StandardButton QMessageBox::question(QWidget *parent, ----- 父亲const QString &title, ----- 标题const QString &text, ------ 文本信息QMessageBox::StandardButtons buttons = StandardButtons(Yes | No), ---- 按钮QMessageBox::StandardButton defaultButton = NoButton) ---- 按钮 五种弹窗: QMessageBox::NoIconQMessageBox::QuestionQMessageBox::InformationQMessageBox::WarningQMessageBox::Critical
2. 修改组件图标
(1)通过ui界面
下拉箭头–>选择文件/选择资源
(2)通过QIcon的方式
在demo.cpp中,通过QIcon类
#include <QIcon>QIcon::QIcon(const QString &filename)
使用:
QIcon icon_q("C:\\Users\\Administrator\\Desktop\\question.jpg");ui->btn_question->setIcon(icon_q);
(3)通过QPixmap类
#include <QPixmap>
使用:
QPixmap map_w("C:\\Users\\Administrator\\Desktop\\warning.jpg");
QIcon icon_w(map_w);
ui->btn_warning->setIcon(icon_w);
这样写也不会报错:
QPixmap map_w("C:\\Users\\Administrator\\Desktop\\warning.jpg");
ui->btn_warning->setIcon(map_w);
3. 使用示例
(1)实例化对象实现
//按钮的槽函数
void demo::on_btn_noicon_clicked()
{//第一种版本:实例化对象版本QMessageBox box(QMessageBox::NoIcon,"弹窗标题","弹窗内容",QMessageBox::Yes | QMessageBox::No,this);int btn = box.exec();if(btn == QMessageBox::Yes) {qDebug() << "按下的是yes按键";} else if(btn == QMessageBox::No) {qDebug() << "按下的是No按键";}
}
- 注:
virtual int exec()
阻塞函数
2. 静态函数版本
[static] ----- 静态函数
QMessageBox::StandardButton QMessageBox::question(QWidget *parent, ----- 父亲const QString &title, ----- 标题const QString &text, ------ 文本信息QMessageBox::StandardButtons buttons = StandardButtons(Yes | No), ---- 按钮QMessageBox::StandardButton defaultButton = NoButton) ---- 按钮
//第二种版本:静态版本QMessageBox::StandardButton btn =QMessageBox::question(this,"标题文本","文本信息",QMessageBox::Yes | QMessageBox::No);if(btn == QMessageBox::Yes) {qDebug() << "按下的是yes按键";} else if(btn == QMessageBox::No) {qDebug() << "按下的是No按键";}
二、颜色对话框和字体对话框类
(一)QColorDialog
[static] ----静态函数--- 不需要实例化对象QColor QColorDialog::getColor(const QColor &initial = Qt::white, ----- 设置颜色QWidget *parent = nullptr, ---- 父亲const QString &title = QString(), ----- 标题QColorDialog::ColorDialogOptions options = ColorDialogOptions()) --- 默认值QColor:颜色类QColor::QColor(const QColor &color) ---- 设置颜色bool QColor::isValid() const ---- 判断颜色是否设置成功Returns true if the color is valid; otherwise returns false.
(二)QFontDialog
[static] ---- 静态函数QFont QFontDialog::getFont(bool *ok, ---- 字体状态const QFont &initial, ---- 默认字体QWidget *parent = nullptr, -----父亲const QString &title = QString(), ---- 标题QFontDialog::FontDialogOptions options = FontDialogOptions()) ---- 默认值QFont:字体类QFont::QFont(const QString &family, --- 字体:宋体、楷体、黑体....int pointSize = -1, --- 字体大小int weight = -1, --- 宽度bool italic = false) ----斜体void setFont(const QFont &);----- 设置字体
三、资源文件
Qt资源文件就是利用Qt创造器和rcc资源编译器将Qt资源进行汇总到工程中。
Qt资源文件是不能自己转换为C++代码,需要借助RCC编译器转换为C++代码。
QtCreator集成软件将以上的内容交给了xxx.pro工程文件,自动生成Makefile文件,最后由Makefile文件完成
(一)添加资源文件
- 将资源文件添加到工程中,注意路径不要有中文(注意添加到工程文件中,不要加到影子文件中)
- 文件->新建文件或者项目
- 添加文件
- 修改前缀,选中要添加的资源,点击打开
(二)添加图标的方式
第一种方式:通过ui界面的右侧的属性进行添加图标
选择父窗口—>在右侧属性中选择WindowIcon–>点击小三角选择添加资源
第二种方式:通过QIcon类
QIcon::QIcon(const QString &fileName)
----参数:文件的名字(说白了文件的路径)
第三种方式:通过QPixmap类
QIcon::QIcon(const QPixmap &pixmap)
QPixmap::QPixmap(const QString &fileName, ---- 文件的名字(说白了文件的路径)const char *format = nullptr, Qt::ImageConversionFlags flags = Qt::AutoColor)