Qt Creater 2

我是會員,別搞我發表於2020-10-29

Qt Creater 2

新增資原始檔

將圖片資源拷貝到專案位置下->右鍵專案->新增新檔案->Qt resource file->新增字首->新增檔案

使用: “: 字首 檔名”

對話方塊

  • QColorDialog() 選擇顏色
  • QFileDialog() 選擇檔案或目錄
  • QFontDialog() 選擇字型
  • QInputDialog() 允許使用者輸入一個值,並將其返回
  • QMessageBox() 訊息對話方塊
  • QPageSetupDialog()
  • QPrintDialog()
  • QPrintPreviewDialog()
  • QProgressDialog()

模態、非模態對話方塊

  • 模態對話方塊:阻塞程式
  • 非模態:不阻塞
connect(ui->actionNew,  &QAction::triggered,  [=] () {     
       //模態視窗
//    QDialog dlg(this);
//    dlg.resize(300,200);
//    dlg.exec();

     //非模態視窗
    QDialog* dlg2 = new QDialog(this);
    dlg2->resize(300,200);
    dlg2->show();
    dlg2->setAttribute(Qt::WA_DeleteOnClose);  //釋放記憶體
    } );
}
  • 非模態視窗:由於lambda表示式建立的是匿名物件,用完自動釋放,因此需要將其建立在堆區,並使用->訪問。
  • 非模態視窗: 由於建立在堆區,需要關閉時手動釋放記憶體

訊息對話方塊

//錯誤對話方塊
QMessageBox::critical(this,"crtical", "錯誤"); 
//資訊對話方塊
QMessageBox::information(this,"info","資訊");
//提問對話方塊 
QMessageBox::question(this,"ques","提問",QMessageBox::Save | QMessageBox::Cancel, QMessageBox::Cancel);
  • 提問對話方塊,前三個引數不用多說
  • 第四個引數:彈出的選擇項,按鍵型別
  • 第五個引數,彈出的選擇項中,預設的選擇項
  • 提問對話方塊的返回值就是你所選擇的按鍵型別
 if(QMessageBox::Save== QMessageBox::question(this,"ques","提問",QMessageBox::Save | QMessageBox::Cancel))
   {
       qDebug()<<"save";
   }
   else
   {
       qDebug()<<"cancel";
   }

顏色對話方塊

//顏色對話方塊
QColor color = QColorDialog::getColor(QColor(255,0,0) );
qDebug()<< color.red()<<  color.green() << color.blue();

返回值可以用QColor接收

檔案對話方塊

//檔案對話方塊
QString path = QFileDialog::getOpenFileName(this, "開啟檔案", "C:\\Users\\cui\\Desktop","(*.md)" );
qDebug()<<path;
  • 第二個引數:標題
  • 第三個引數:預設開啟路徑
  • 返回值是選中的路徑

字型對話方塊

//字型對話方塊
bool flag;
QFont font = QFontDialog::getFont(&flag,QFont("宋體",12));
qDebug()<<"字型"<<font.family()<<"字號"<<font.pointSize()<<"是否加粗"<<font.bold() <<"是否斜體"<<font.italic();
  • 第一個引數bool型別(不知道有什麼用)
  • 第二個引數QFont(“字型”, 字號)

相關文章