您好,登錄后才能下訂單哦!
考慮的QT的對話框的內容頗多,很難記,而且使用起來往往相同的操作,所以將自己敲的各個常用對話框的使用方法上傳。以下包含了顏色對話框、打開單個(多個)文件對話框,字體對話框、輸入對話框、提示信息對話框、進度對話框、QErrorMessage對話框,以及向導對話框。
廢話少說,直接上代碼:
//顏色對話框
QColor color = QColorDialog::getcolor(Qt::red,this,tr("顏色對話框"));
//獲取選擇的顏色再去設置即可
//文件對話框
QString filename = QFileDialog::getOpenFileName(this,tr("文件對話框"),"F:",tr("圖片文件(*png)"));//如果想要獲取多個文件直接使用getOpenFileNames方法即可
//字體對話框
bool ok;
QFont font = QFontDialog::getFont(&ok,this);
//輸入對話框
QString str = QInputDialog::getText(this,tr("輸入字符串對話框"),tr("請輸入用戶名"),QLineEdit::Normal,tr("admin"),&ok);
if(ok)
qDebug()<<"Welcome";
int value = QInputDialog::getInt(this,tr("輸入整數對話框"),tr("請輸入0-1000的數值"),100,0,1000,10,&ok);
if(ok)
qDebug()<<"Welcome";
double value2 = QInputDialog::getDouble(this,tr("輸入浮點數對話框"),tr("請輸入0-1000的數值"),0.00,0,1000,2,&ok);
if(ok)
qDebug()<<"Welcome";
QStringList items;
items<<tr("條目1")<<tr("條目2");
QString item = QInputDialog::getItem(this,tr("輸入條目對話框"),tr("請選擇一個條目"),items,0,true,&ok);
if(ok)
qDebug()<<"Welcome";
//提示信息對話框
int res = QMessageBox::question(this,tr("問題對話框"),tr("nothing"),QMessageBox::Yes,QMessageBox::No);
if(res == QMessageBox::Yes) //問題對話框
qDebug()<<"2333333";
int res1 = QMessageBox::information(this,tr("提示對話框"),tr("nothing"),QMessageBox::Ok);
if(res == QMessageBox::Ok) //提示對話框
qDebug()<<"2333333";
int res3 = QMessageBox::warning(this,tr("警告對話框"),tr("nothing"),QMessageBox::Abort);
if(res == QMessageBox::Abort)
qDebug()<<"2333333"; //警告對話框
int res4 = QMessageBox::critical(this,tr("嚴重錯誤對話框"),tr("nothing"),QMessageBox::YesAll);
if(res == QMessageBox::YesAll)
qDebug()<<"2333333";
int res4 = QMessageBox::about(this,tr("關于對話框"),tr("nothing"),tr("like life,like Opensource"));
//進度對話框
QProgressDialog dialog(tr("進度"),tr("Cancel"),0,50000,this);
dialog.setWindowTitle("進度對話框");
dialog.setWindowModality(Qt::WindowModal);
dialog.show();
for(int i = 0;i<=50000;i++){
dialog.setValue(i);
QCoreApplication::processEvents();
if(dialog.wasCanceled())
break;
}
//用于彈出錯誤信息.內容詳細,不僅僅只是一個提示。有別于QMessageBox內的子方法
QErrorMessage *dia = new QErrorMessage(this);
dia->setWindowTitle("Error");
dia->showMessage(tr("It't error"));
QWizardPage *createPage1();
QWizardPage *createPage2();
QWizardPage *createPage3();
QWizardPage *MyWidget::createPage1() //一定要注意,這個是基于Widget類的函數,在QMainwindow是不存在的
{
QWizardPage *page = new QWizardPage;
page->setTitle("介紹");
return page;
}
QWizardPage *MyWidget::createPage2()
{
QWizardPage *page = new QWizardPage;
page->setTitle("用戶選擇信息");
return page;
}
QWizardPage *MyWidget::createPage3()
{
QWizardPage *page = new QWizardPage;
page->setTitle("結束");
return page;
}
QWizard wizard(this);
wizard.setWindowTitle("向導對話框");
wizard.addPage(createPage1());
wizard.addPage(createPage2());
wizard.addPage(createPage3());
wizard.exec();
希望能幫到各位,而且希望大家能將開源精神傳播下去。Like life,like Opensource。
繼續學習QT中。有資料會多多開源。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。