设为首页 加入收藏

TOP

计算机二级C++技巧:QT技巧
2014-11-11 08:30:04 】 浏览:1278
Tags:计算机 二级 技巧 :QT

  1、如果在窗体关闭前自行判断是否可关闭


  答:重新实现这个窗体的closeEvent()函数,加入判断操作


  void MainWindow::closeEvent(QCloseEvent *event)


  {


  if (maybeSave())


  {


  writeSettings();


  event->accept();


  }


  else


  {


  event->ignore();


  }


  }


  2、如何用打开和保存文件对话框


  答:使用QFileDialog


  QString fileName = QFileDialog::getOpenFileName(this);


  if (!fileName.isEmpty())


  {


  loadFile(fileName);


  }


  QString fileName = QFileDialog::getSaveFileName(this);


  if (fileName.isEmpty())


  {


  return false;


  }


  如果用qt自带的话:


  选择文件夹


  QFileDialog* openFilePath = new QFileDialog( this, " 请选择文件夹", "file"); //打开一个目录选择对话框


  openFilePath-> setFileMode( QFileDialog::DirectoryOnly );


  if ( openFilePath->exec() == QDialog::Accepted )


  {


  //code here!


  }


  delete openFilePath;


  选择文件:


  QFileDialog *openFilePath = new QFileDialog(this);


  openFilePath->setWindowTitle(tr("请选择文件"));


  openFilePath->setDirectory(".");


  openFilePath->setFilter(tr("txt or image(*.jpg *.png *.bmp *.tiff *.jpeg *.txt)"));


  if(openFilePath->exec() == QDialog::Accepted)


  {


  //code here


  }


  delete openFilePath;


  7、如何使用警告、信息等对话框


  答:使用QMessageBox类的静态方法


  int ret = QMessageBox::warning(this, tr("Application"),


  tr("The document has been modified.\n"


  "Do you want to save your changes "),


  QMessageBox::Yes | QMessageBox::Default,


  QMessageBox::No,


  QMessageBox::Cancel | QMessageBox::Escape);


  if (ret == QMessageBox::Yes)


  return save();


  else if (ret == QMessageBox::Cancel)


  return false;


  或者简单点儿:


  QMessageBox::information(this, "关于","盲人辅助系统(管理端)!\nVersion:1.0\nNo Copyright");


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇最简单的MFC程序 下一篇在MFC程序中使用XML文件配置工具栏

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目