Qt基础 04_Qt对话框(三) 标准对话框
来源:互联网 发布:mmd动作数据怎么做 编辑:程序博客网 时间:2024/05/21 19:45
/******************************************************
* 课程名 :QT编程
* 时 间 :2017年6月1日(周四)下午 + 2017年6月2日(周五)上午前半段
* 工程名 :05-standardDialog
* 类 名 : standardDialog
* 内 容 :标准对话框 —— Color颜色对话框、Font字体对话框、File文件对话框、Message消息对话框
* CSDN : Qt基础 03_Qt对话框(三)
******************************************************/
前言:更改对话框标题
在构造函数中添加如下代码:
standardDialog::standardDialog(QWidget *parent) : QDialog(parent), ui(new Ui::standardDialog){ ui->setupUi(this); this->setWindowTitle("标准对话框测试");}
一、Color颜色对话框
目标:利用颜色对话框更改字体颜色
步骤一:添加头文件#include < QColorDialog >和#include < QPalette >
步骤二:新建测试字体的Label和colorButton,利用colorButton“转到槽”的属性,添加如下功能:
方法一:通过静态方法实现
void T5_Dialog::on_ColorButton_clicked(){ //通过静态方法实现 //1.模态弹出颜色对话框 QColor color = QColorDialog::getColor(Qt::black,this,"颜色对话框"); //2.判断用户点击ok还是cancel if(color.isValid()) { //3.修改label字体颜色 //3.1 读 QPalette palett = ui->testLabel->palette(); //3.2 改 palett.setColor(QPalette::WindowText,color); //3.3 写 ui->testLabel->setPalette(palett); } else { qDebug()<<"颜色取消选择"; } //在控制台输出用户选择的颜色 QRgb rgb = color.rgb(); qDebug()<<"#"<<QString::number(rgb,16);}
方法二:通过静态方法实现
void T5_Dialog::on_ColorButton_clicked(){ //通过对象方法动态实现 //1.创建对象 QColorDialog colorDlg(Qt::red,this); //2.打开alpha通道 colorDlg.setOption(QColorDialog::ShowAlphaChannel,true); //3.模态弹出 colorDlg.exec(); QColor color = colorDlg.currentColor(); //4.修改label字体颜色 //4.1 读 QPalette palett = ui->testLabel->palette(); //4.2 改 palett.setColor(QPalette::WindowText,color); //4.3 写 ui->testLabel->setPalette(palett); //在控制台输出用户选择的颜色 QRgb rgb = color.rgb(); qDebug()<<"#"<<QString::number(rgb,16);}
二、Font字体对话框
目标:利用字体对话框更改字体格式
步骤一:添加头文件#include < QFontDialog >
步骤二:新建fontButton,利用fontButton“转到槽”的属性;
步骤三:F1< QFontDialog > ,找到getfont的属性说明,将其中的例子拷入槽函数,并做修改
void standardDialog::on_fontButton_clicked(){ bool ok; QFont font = QFontDialog::getFont(&ok, QFont("Times",12),this,"字体对话框"); if (ok) { // font is set to the font the user selected ui->testLabel->setFont(font); } else { // the user canceled the dialog; font is set to the default // application font, QApplication::font() }}
三、File文件对话框
目标:利用文件对话框打开、保存文件
步骤一:添加头文件#include < QFileDialog > 和 #include < QFile >
步骤二:新建fileopenButton,利用fileopenButton“转到槽”的属性;
步骤三:F1< QFileDialog >找到getOpenFileName的属性说明。添加如下功能:
/* 文件操作步骤:1.打开文件 2.操作文件 3.关闭文件 */void standardDialog::on_fileopenButton_clicked(){ //通过打开对话框获取文件路径 QString path = QFileDialog::getOpenFileName(this,"文件打开对话框","D:/", "图片(*png *jpg *gif);;文本文件(*txt);;所有文件(*)"); //可打印出完整文件路径 qDebug()<< path ; //使用#inlude<QFile>头文件,即可创建文件对象,F1查看帮助文档 //创建文件对象 QFile file(path); //打开文件 if(file.open(QIODevice::ReadOnly | QIODevice::Text)) { //打开成功 //读 QByteArray array = file.readAll(); //显示到label //其中的fromLocal8Bit(array)是为了将读取的内容从本地编码转为UTF-8 ui->testLabel->setText(QString::fromLocal8Bit(array)); } else { //打开失败 qDebug()<<"文件打开失败"; } //关闭 file.close();}
小作业:同时打开n个文件,将文件内容读出
四、Message消息对话框
目标:实现消息对话框
步骤一:添加头文件#include < QMessageBox >
步骤二:新建MessageButton,利用MessageButton“转到槽”的属性;
步骤三:F1< QMessageBox >找到getOpenFileName的属性说明。添加如下功能:
void standardDialog::on_messageButton_clicked(){ //提问对话框 int ret = QMessageBox::question(this,"提问","你们了解Qt吗?",QMessageBox::Yes,QMessageBox::No); if(QMessageBox::Yes == ret) { qDebug() << "是的,我了解"; } else { qDebug() << "不,我不了解"; } //提示对话框 QMessageBox::information(this,"提示","这是我们的QT课程",QMessageBox::Ok); //警告对话框 QMessageBox::warning(this,"警告","上课不能玩游戏",QMessageBox::YesAll); //关于对话框 QMessageBox::about(this,"关于","本课程的考核方式:小项目验收");}
源代码:http://download.csdn.net/download/c_estbon/9863182
- Qt基础 04_Qt对话框(三) 标准对话框
- Qt基础 02_Qt对话框(一)
- Qt基础 03_Qt对话框(二)
- QT学习 之 对话框 (三) 标准颜色对话框
- Qt浅谈之三:内置标准对话框
- Qt浅谈之三:内置标准对话框
- Qt标准对话框
- QT标准对话框
- Qt标准对话框
- Qt标准对话框
- QT 标准对话框
- QT 内置标准对话框
- 【Qt】标准文件对话框
- 【Qt】标准输入对话框
- Qt标准对话框实现
- Qt标准对话框
- QT之标准对话框
- QT:标准对话框
- Android中的include标签
- 循环神经网络(RNN, Recurrent Neural Networks)介绍
- Ubuntu添加和删除用户
- 做到这几点,才能吸引HR的注意!
- SAP批次级别的意义及启用操作
- Qt基础 04_Qt对话框(三) 标准对话框
- 在wicket框架下生成年份与月份DropDownChoice下拉框
- C++:内联函数
- Retrofit2 笔记
- 欢迎使用CSDN-markdown编辑器
- AV1视频编码标准资源汇总
- PHP学习笔记
- jquery怎么讲html页面中指定标签,删除,即从html代码中删除,包括本元素、及其子元素
- 数据应用达人之SQL基础教程分享1