前言:
当前咱们对“qt文本框怎么设置透明”大概比较注意,同学们都想要了解一些“qt文本框怎么设置透明”的相关内容。那么小编也在网上搜集了一些对于“qt文本框怎么设置透明””的相关知识,希望朋友们能喜欢,姐妹们快快来了解一下吧!1、颜色选择对话框
颜色对话框类 QColorDialog 提供了一个可以获取指定颜色的对话框的对话框部件:
//添加头文件#include <QColorDialog>//getColor的3个参数分别是:设置初始颜色、父窗口、和对话框标题QColor color = QColorDialog::getColor(Qt::red, this, "Color dialog");qDebug()<<"color"<<color;
这里使用 QColorDialog 的静态函数 getColor () 来获取颜色,执行时弹出颜色选择对话框:
返回的是一个 QColor 类型的数据:
这四个数值分别代表:透明度(alpha)、Red、Green、Blue。它们的默认值都是 0.0~1.0,有效数字为 6 位,对于 alpha 来说,1.0 表示完全不透明,0.0 表示完全透明。
还可以通过创建对象的方式创建颜色对话框:
QColorDialog dialog(Qt::red,this);dialog.setOption(QColorDialog::ShowAlphaChannel);dialog.exec();QColor color = dialog.currentColor();qDebug()<<"color"<<color;
效果与前面使用静态方法的一样。
二、字体对话框
字体对话框 QFontDialog 类提供了一个可以选择字体的对话框部件:
#include <QFontDialog>//ok is a sign to mark what you chosen(OK or Calcel)bool ok;QFont font = QFontDialog::getFont(&ok,this);if(ok) { //choose OK ui->pushButton_2->setFont(font);} else { //choose cancel qDebug()<<"Cancel";}
这里通过静态函数来选择字体,如果在字体对话框中单击了 OK,那么 ok=true;如果单击了 Cancel,那么 ok=false。
三、输入对话框
输入对话框 QInputDialog 类用来提供一个简单方便的对话框,从用户哪里去一个单一的数值或字符串。
【领QT开发教程学习资料,点击下方链接莬费领取↓↓,先码住不迷路~】
点击→领取「链接」
//头文件#include <QInputDialog>bool ok;//gain stirng//getText()参数:指定父窗口、设置窗口标题、设置对话框中的标签的显示文本、//输入字符串的显示模式(例如密码显示小黑点)、设置输入框中的默认字符串,按钮信息QString string = QInputDialog::getText(this, "Input string Dialog", "please input user name:", QLineEdit::Normal, "admin", &ok);if(ok) { qDebug()<<"stirng:"<<string;}//gain intint valueInt = QInputDialog::getInt(this, "Input Int Dailog", "please input a value between -1000 and 1000", 100, -1000, 1000, 10, &ok);if(ok) { qDebug()<<"valueInt:"<<valueInt;}//gain floatdouble valueDouble = QInputDialog::getDouble(this, "Input Double Dialog", "please input a value between -1000 and 1000", 0.00, -1000, 1000, 2, &ok);if(ok) { qDebug()<<"valueDouble:"<<valueDouble;}QStringList items;items<<"item1"<<"item2";//gain itemsQString item = QInputDialog::getItem(this, "Input Item Dialog", "please choose a item:", items, 0, true, &ok);if(ok) { qDebug()<<"item:"<<item;}
显示如下:
输入后,显示结果为:
四、进度对话框
进度对话框 QProgressDialog 对一个耗时较长的操作进度提供了反馈。
#include <QProgressDialog>QProgressDialog dialog("copy progress", "Cancel", 0, 50000, this);dialog.setWindowTitle("Progress Dialog"); //set window titledialog.setWindowModality(Qt::WindowModal); //set dialog modaldialog.show();//演示复制进度for(int i = 0; i < 50000; ++i) { dialog.setValue(i); //设置进度条当前值 QCoreApplication::processEvents(); //避免界面冻结 if(dialog.wasCanceled()) { //按下取消键则中断 break; }}dialog.setValue(50000); //显示100%qDebug()<<"copy finish";
效果:
五、错误信息对话框
QErrorMessage 类提供了一个显示错误信息的对话框:
#include <QErrorMessage>QErrorMessage *dialog = new QErrorMessage(this);dialog->setWindowTitle("Error mesage Dialog");dialog->showMessage("This is error message.");
显示:
五、文件对话框5.1. 选择打开一个文件
文件对话框 QFileDialog 提供了一个用户选择文件或文件夹的对话框:
#include <QFileDialog>//getOpenFileName()函数用来获取选择的文件名,参数:指定父窗口、设置标题、默认打开目录、文件类型过滤器。QString fileName = QFileDialog::getOpenFileName(this, "File Dialog", "/home/daowm/", "Picture(* png * jpg)");qDebug()<<fileName;
运行程序显示:
可以设置多个不同类别的过滤器,不同类别间使用两个分号 “;;” 隔开,例如:
QString fileName = QFileDialog::getOpenFileName(this, "File Dialog", "/home/daowm/", "Picture(* png * jpg);;TextFile(* txt)");5.2. 打开多个文件
可以使用 getOpenFileNames () 函数选择多个文件:
#include <QFileDialog>QStringList fileNames = QFileDialog::getOpenFileNames(this, "File Dialog", "/home/daowm/", "Picture(* png * jpg);;TextFile(* txt)");qDebug()<<fileNames;
得到的 fileNames 为:
5.3. 使用 getSaveFileName () 来实现保存文件对话框5.4. 使用 ExistingDirectory () 函数来获取一个已存在的文件夹路径六、消息对话框
QMessageBox 类提供一个模态对话框来通知用户一些信息,或者向用户提出一个问题并获取答案。
#include <QMessageBox>//question Dialogint ret1 = QMessageBox::question(this, tr("Question Dialog"), tr("Do you know Qt?"), QMessageBox::Yes,QMessageBox::No);if(ret1 == QMessageBox::Yes){ qDebug()<<tr("Question!");}//Information Dialogint ret2 = QMessageBox::information(this, tr("Information Dialog"), tr("This is Qt!"), QMessageBox::Ok);if(ret2 == QMessageBox::Ok){ qDebug()<<tr("Information!");}//Warning Dialogint ret3 = QMessageBox::warning(this, tr("Warning Dialog"), tr("1111"), QMessageBox::Abort);if(ret3 == QMessageBox::Abort) { qDebug()<<tr("Warning!");}//Critial Dialogint ret4 = QMessageBox::critical(this, tr("Critial Dailog"), tr("Find a critial question!"), QMessageBox::YesAll);if(ret4 == QMessageBox::YesAll) { qDebug()<<tr("Critial!");}//About DialogQMessageBox::about(this, tr("About Dialog"), tr("This is a About Dialog!"));
显示:
七、向导对话框
QWizard 类提供了一个设计向导界面的框架。
//添加头文件#include <QWizard>//在窗口的头文件中添加函数声明:private: QWizardPage *createPage1(); QWizardPage *createPage2(); QWizardPage *createPage3();//实现这三个函数QWizardPage * Widget::createPage1() //wizard page 1{ QWizardPage *page = new QWizardPage; page->setTitle(tr("Introduce")); return page;}QWizardPage * Widget::createPage2() //wizard page 2{ QWizardPage *page = new QWizardPage; page->setTitle(tr("Select Information")); return page;}QWizardPage * Widget::createPage3() //wizard page 3{ QWizardPage *page = new QWizardPage; page->setTitle(tr("Finish")); return page;}//执行向导QWizard wizard(this);wizard.setWindowTitle(tr("Wizard Dialog"));wizard.addPage(createPage1()); //add wizard pagewizard.addPage(createPage2());wizard.addPage(createPage3());wizard.exec();
显示如下:
标签: #qt文本框怎么设置透明