zoukankan      html  css  js  c++  java
  • Qt getSaveFileName

    获取保存文件名
    getSaveFileName

    1     QString strSaveName = QFileDialog::getSaveFileName(this,
    2                                                        tr("保存的文件"),
    3                                                        tr("demo.a.txt"),
    4                                                        tr("Items files(*.items)"));

    在这里插入图片描述

     1 //保存所有条目到文件
     2 void MainWindow::on_pushButtonSave_clicked()
     3 {
     4     QString strSaveName = QFileDialog::getSaveFileName(
     5                                                             this,
     6                                                             tr("保存的文件"),
     7                                                             tr("."),
     8                                                             tr("Items files(*.items)")
     9                                                         );
    10     myDebug("strSaveName",strSaveName);
    11 
    12     //判断文件名
    13    if( strSaveName.isEmpty() )
    14    {
    15        return;
    16    }
    17 
    18    //打开要写入的文件
    19    QFile fileSave(strSaveName);
    20    myDebug("strSaveName",strSaveName);
    21    if( ! fileSave.open( QIODevice::WriteOnly ))
    22    {
    23        //无法打开要写入的文件
    24        QMessageBox::warning(this, tr("打开写入文件"),
    25                             tr("打开要写入的文件失败,请检查文件名和是否具有写入权限!"));
    26        return;
    27    }
    28 
    29 
    30    //创建数据流
    31    QDataStream dsOut(&fileSave);
    32    //先写入列表条目计数
    33    qint32 nCount = ui->listWidget->count();
    34    myDebug("nCount",nCount);
    35    dsOut << nCount; //没有回车
    36    //dsOut << nCount << endl;//有回车
    37    //逐个写入条目
    38    for(qint32 i=0; i < nCount; i++)
    39    {
    40        QListWidgetItem *theItem = ui->listWidget->item(i);
    41        dsOut<< *theItem;   //把条目对象写入数据流,不是写指针数值
    42        //数据流仅写入条目通用数据,条目的非通用数据不写入,比如条目的标志位不写
    43    }
    44    //写入完毕
    45 }

     

  • 相关阅读:
    python的内置方法 isinstance && issubclass
    python类的内置方法
    反射(python内置方法)
    类装饰器 @property
    多态与多态性
    组合(对象1.属性=对象2)
    类的封装
    多继承 mro 继承顺序 与 菱形继承(钻石继承)
    类的继承派生&&重写
    封装 继承 多态 派生 组合定义 && 对象之间交互
  • 原文地址:https://www.cnblogs.com/ybqjymy/p/13897702.html
Copyright © 2011-2022 走看看