zoukankan      html  css  js  c++  java
  • QT::对话框

    1、颜色对话框
    QColor:
    QColoDialog:
    QColoDialog::getColor()//获取颜色
    //创建颜色对话框,默认为红色。
    QColorDialog color(Qt::red,this);
    //显示颜色对话框的内容
    color.setOption(QColorDialog::ShowAlphaChannel);
    //以摸态的方式显示
    color.exec();
    //获取颜色信息
    QColor c = color.currentColor();
    
    //获取颜色信息 与 上面一句等效
    QColor cc = QColorDialog::getColor();
    
    //打开颜色对话框的默认设置。
    QColor cc = QColorDialog::getColor(Qt::red,this,"颜色对话框",QColorDialog::ShowAlphaChannel);
    2、打开文件对话框
    //函数以模态的方式运行一个文件对话框,选择一个文件打开,返回路径文件名。
    //参数:选择父窗口,对话框名字,打开路径,文件类型过滤器。
    QString str = QFileDialog::getOpenFileName(this,tr("OpenFileName"),"F:",tr("图片文件(*png *cpp *jpg)"));
    
    //设置多个过滤器用;;隔开。
    QString str = QFileDialog::getOpenFileName(this,tr("OpenFileName"),"F:",tr("图片文件(*png *cpp);;文本文件(*txt)"));
    
    //同时选择多个cpp文件,用getOpenFileNames和StringList
    QStringList lists = QFileDialog::getOpenFileNames(this,tr("OpenFileName"),"F:",tr("图片文件(*png *cpp)"));
    //保存的文件对话框/另存为文件对话框。
    
    QString str_1 = QFileDialog::getSaveFileName(this,tr("OpenFileName"),"F:",tr("图片文件(*png *cpp);;文本文件(*txt)"));
    
    //获取文件夹路径
    QString str_2 = QFileDialog::getExistingDirectory();
    3、字体对话框。
     bool ok;
    QFont f = QFontDialog::getFont(&ok,this);
    if(ok)
        ui->pushButton_3->setFont(f);
    else
        qDebug()<<"not choose";
    4、输入对话框   
    bool ok;
    QString str = QInputDialog::getText(this,tr("input:"),tr("please in put:"),QLineEdit::Normal,tr(""),&ok);
    if(ok)
      qDebug()<<str;
    //获取数字输入,当前显示的值,最小,最大值,一次增加/减少的值。
    int value = QInputDialog::getInt(this,tr("input num"),tr("please in put num"),
                                    100,-1000,1000,10,&ok);
    //获取数字输入,当前显示的值,最小,最大值,小数点位数。
    int value = QInputDialog::getDouble(this,tr("input num"),tr("please in put num"),
                                    0.1,-1000,1000,1,&ok);
    QStringList lists;
    lists<<tr("条目1")<<tr("条目2");
    //获取条目的内容,(0,true,&ok)0表示显示第一个条目,true可以被更改,&ok返回一个值,确定是否被更改。
    QString str = QInputDialog::getItem(this,tr("input"),tr("please input"),lists,0,true,&ok);
    5、信息对话框
    int ret = QMessageBox::question(this,tr("question"),tr("do you knew abort Qt?"),QMessageBox::Yes,QMessageBox::No,QMessageBox::YesAll);
    if(ret = QMessageBox::Yes)qDebug()<<ret;
    QMessageBox::information(this,tr("information"),tr("this is Qt"),QMessageBox::Yes);
    QMessageBox::warning(this,tr("Wareing"),tr("help"),QMessageBox::Abort);
    QMessageBox::critical(this,tr("error"),tr("close"),QMessageBox::YesAll);
    QMessageBox::about(this,tr("about"),tr("this is qt teach"));
    6、进度对话框
    QProgressDialog dialog (tr("文件复制进度"),tr("取消"),0,500,this);
    dialog.setWindowTitle(tr("进度对话框"));
    dialog.setWindowModality(Qt::WindowModal);//设置对话框为模态。
    dialog.show();
    for(int i = 0; i<50000; i++)
    {
        dialog.setValue(i);
        QCoreApplication::processEvents();//避免画面冻结。
        if(dialog.wasCanceled()) break;
    }
    dialog.setValue(50000);
    7、错误对话框
    QErrorMessage *error = new QErrorMessage(this);
    error->setWindowTitle(tr("error"));
    error->showMessage(tr("error Message"));
    8、向导对话框
    QWizard wzd(this);
    wzd.setWindowTitle("向导对话框");
    wzd.addPage(page1());
    wzd.addPage(page2());
    wzd.addPage(page3());
    wzd.exec();
    QWizardPage* MainWindow::page1()
    {
        QWizardPage *page1 = new QWizardPage;
        page1->setTitle("1");
        return page1;
    }
    QWizardPage* MainWindow::page2()
    {
        QWizardPage *page2 = new QWizardPage;
        page2->setTitle("2");
        return page2;
    }
    QWizardPage* MainWindow::page3()
    {
        QWizardPage *page3 = new QWizardPage;
        page3->setTitle("3");
        return page3;
    }
  • 相关阅读:
    中移动ipv6-老毛子固件获取ipv6设置
    win7-win10 禁用IPV6临时地址
    辅助调用函数【call,apply,bind】
    Unraid修改docker镜像地址&默认启动
    docker基本入门知识-小白向
    [不止于代码]Unraid基本使用速记
    Dockerfile文件说明
    Git之pull,fetch差别
    代码片段添加智能提示,打造一款人见人爱的ORM框架
    新定义三层,指挥官模式
  • 原文地址:https://www.cnblogs.com/osbreak/p/14370047.html
Copyright © 2011-2022 走看看