zoukankan      html  css  js  c++  java
  • [QT] 记录一些使用技巧

    概述

    最近花了好几天的时间编写了一个专利文件检索的程序,通过Qt完成了PC端程序,因为以前写过Qt,所以这次可以说是极为顺利了,不过忘记了很多东西,所以需要记录

    也希望能帮助到广大网友,会继续更新的

    打开窗口

    • 不关闭原来的
        Setting* set = new Setting();
        set->show();
    

    参考 https://blog.csdn.net/qq_38446366/article/details/79700556

    弹出消息框

    下面代码会乱码 需要删除fromLocal8Bit

    QMessageBox::information(this, QString::fromLocal8Bit("警告"),QString::fromLocal8Bit("有种你再点击一次")); 
    

    判断文件存在

    https://blog.csdn.net/aqtata/article/details/18016467

    QFileInfo fi("C:/123");                     // 目录存在
    qDebug() << fi.isFile();                    // false
    qDebug() << QFile::exists("C:/123");        // true
    

    获取时间

    QDateTime current_date_time =QDateTime::currentDateTime();
    QString current_date =current_date_time.toString("yyyy.MM.dd hh:mm:ss.zzz ddd");
    

    参考:https://blog.csdn.net/lusirking/article/details/51460716

    获取子控件

    QList<QCheckBox *> allCheckBox = ui->frame->findChildren<QCheckBox *>();
    for(int i = 0;i<allCheckBox.size();i++)
    {
        if(allCheckBox.at(i)->isChecked())
        {
            labels.append(allCheckBox.at(i)->objectName().toInt());
        }
    }
    

    TableWidget设置不可编辑

    setEditTriggers(QAbstractItemView::NoEditTriggers);

    QT QString判断纯数字

    
    bool isDigital=QString("12345678").contains(QRegExp("^\d+$"));//true
    bool isDigital=QString("12345678 ").contains(QRegExp("^\d+$"));//false
    bool isDigital=QString("123.45678").contains(QRegExp("^\d+$"));//false
    

    原文链接:https://blog.csdn.net/fjal256/article/details/102796047

    Qt 保存文件选择器

    QString file_path = QFileDialog::getSaveFileName(this,"保存位置","www.pdf","*.pdf");
    

    参考: https://www.cnblogs.com/tony-li/p/4095990.html

    读写ini

    #include <QSettings>
    void MainWindow::on_pushButton_6_clicked()
    {
        //Qt中使用QSettings类读写ini文件
        //写文件
        //构造函数第一个参数是ini文件的路径,第二个参数表示针对ini文件,第三个参数可以缺省
        QSettings configIniWrite("d:\1.ini", QSettings::IniFormat);
        //向ini文件中写入内容,setValue函数的两个参数是键值对
        //向ini文件的第一个节写入内容,para1节下的第一个参数
        configIniWrite.setValue("/para1/first", "1111111");
        //向ini文件的第一个节写入内容,para1节下的第二个参数
        configIniWrite.setValue("para1/second", 2222);
        //向ini文件的第二个节写入内容,para2节下的第一个参数
        configIniWrite.setValue("para2/third", "3333333");
        //读文件
        QSettings configIniRead("d:\1.ini", QSettings::IniFormat);
        //将读取到的ini文件保存在QString中,先取值,然后通过toString()函数转换成QString类型
        QString first = configIniRead.value("/para1/first").toString();
        int second = configIniRead.value("/para1/second").toInt();
        QString third = configIniRead.value("/para2/third").toString();
        //打印得到的结果
        qDebug() << first;
        qDebug() << second;
        qDebug() << third;
    }
    
  • 相关阅读:
    http uri唯一标识
    http协议
    python模块 sys
    file 文件的操作
    库的介绍及使用
    python os模块
    python的序列化与反序列化
    python 字典的定义以及方法
    python字符串的常用方法
    在Windows下使用adb logcat grep
  • 原文地址:https://www.cnblogs.com/cjdty/p/12900942.html
Copyright © 2011-2022 走看看