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

    标准文件对话框
    其函数形式如下::
    QString QFileDialog::getOpenFileName
    (
        QWidget * parent=0,
        const QString &caption=QString(),
        const QString &dir=QString(),
        const QString &filter=QString(),
        QString *selectFiler=0,//用户选择的过滤器通过此参数返回
        Option option=0//选择显示文件名的格式,默认是同时显示目录和文件名
    )
    void Widget::btn_click()
    {
        /*getOpenFileName()打开的窗口是模式窗口*/
        /*不含参数*/
        //QString s=QFileDialog::getOpenFileName();
        /*含参数
         * 第一个参数是其父窗口的指针
         * 第二个参数是打开窗口的名字
         * 第三个参数dir,是对话框显示时默认打开的目录,
         *  "." 代表程序运行目录,"/" 代表当前盘符的根目录(Windows,Linux下/就是根目录了),
         *  也可以是平台相关的,比如"C:\"等;
         *  例如我想打开程序运行目录下的Data文件夹作为默认打开路径,
         *  这里应该写成"./Data/",若想有一个默认选中的文件,
         *  则在目录后添加文件名即可:"./Data/teaser.graph"
         * 第四个参数filter,是对话框的后缀名过滤器,
         *  比如我们使用"Image Files(*.jpg *.png)"就让它只能显示后缀名是jpg或者png的文件。
         *  如果需要使用多个过滤器,使用";;"(这里是分号)分割,
         *  比如"JPEG Files(*.jpg);;PNG Files(*.png)";
         * 第五个参数selectedFilter,是默认选择的过滤器;
         * 第六个参数options,是对话框的一些参数设定,
         *  比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。
        */
        QString s=QFileDialog::getOpenFileName(this,"打开窗口的名称","/","C++ file(*.cpp);;C file(*.c);;Head file(*.h)");
        /*用户点击了确定*/
        if(!s.isEmpty())
        {
            this->setWindowTitle(s);
        }
    }
    标准颜色对话框
    其函数形式如下
    getColor()函数是标准颜色对话框QColorDialog类的一个静态函数,该函数返回用户选择的颜色值,下面是getColor()函数形式:
    QColor getColor
    (
        const QColor &initial=QT::whiye,
        QWidget *parent=0
    )
    void Widget::btn_click()
    {
        /*头文件需要包含QColor和QColorDialog*/
        /*
         * 第一个参数设置默认颜色,可选
         * 第二个参数父窗口指针,可选
         */
        QColor c=QColorDialog::getColor(Qt::blue,this);
    }
    标准字体对话框
    其函数形式如下
    getFont()函数是标准字体对话框QFontDialog类的一个静态函数,该函数返回用户所选择的字体,下面是getFont()函数形式
    QFont getFont
    (
        bool *ok,
        QWidget *parent=0
    )
    void Widget::btn_click()
    {
        bool ok;
        /*
         * getFont()第一个参数必选*/
        QFontDialog::getFont(&ok);
        /*用户点击确定,返回true,用户点击取消,返回false*/
        if(ok)
        {
            setWindowTitle("用户点击确定");
        }else
        {
            setWindowTitle("用户点击取消");
        }
    }
    QMessageBox类
    question()函数
    StandardButton QMessageBox::question
    (
        QWidget *parent,//消息框父窗口指针
        const QString & title,//消息框标题栏
        const QString & text,消息框文字提示信息
        StandardButtons buttons=Ok,
        StandardButton defaultButton=No
    )
    void Widget::btn_click()
    {
        /*
         * 第三个参数是设置对话框里有几个按钮,
         * 第四个参数是设置对话框默认选中的按钮是哪个*/
        if(QMessageBox::question(this,"消息标题","消息内容实体",QMessageBox::Ok|QMessageBox::Cancel,QMessageBox::Ok)==QMessageBox::Ok)
        {
            /*用户点击了确定*/
            setWindowTitle("OK");
        }else
        {
            setWindowTitle("NO");
        }
    }
  • 相关阅读:
    light_oj 1197 区间素数筛
    light_oj 1213
    light_oj 1220 素数分解
    bestcoder#43 1002 在数组中找两个数的和取模的最大值 二分
    6月7日 bc总结
    省赛总结
    二分图最大点权独立集 二分图最大点权覆盖
    终于能理解kmp算法了
    hduoj2087 统计串t在串s中出现的次数,重叠不算 KMP
    带权二分图的最大权匹配 KM算法模版
  • 原文地址:https://www.cnblogs.com/zhanggaofeng/p/5987699.html
Copyright © 2011-2022 走看看