1. 程式人生 > >Qt筆記——2.編寫多窗口程序

Qt筆記——2.編寫多窗口程序

qwidget 程序 筆記 cep accept 內容 登錄 修改 push

所學教程網址:http://www.qter.org/portal.php?mod=view&aid=27&page=2

設置按鈕文字

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->pushButton->setText("新窗口"); //將界面上按鈕的顯示文本更改為“新窗口”
}
  • ui :
    • 這裏的ui對象就是界面文件對應的類的實例
    • 在mainwindow.h文件中對其進行了定義
    • 我們可以通過它來訪問設計模式添加到界面上的部件
  • pushButton:
    • 前面添加的按鈕部件Push Button,在其屬性面板上可以看到它的objectName屬性的默認值為pushButton
    • 這裏就是通過objectName屬性的值來獲取部件對象的。

技術分享圖片

  • setText()
    • QPushButton類的setText()函數來設置按鈕的顯示文本
  • 語言問題
    • 在代碼中直接使用中文本不是一個好的習慣
    • 建議在編寫程序時使用英文,當程序完成後使用Qt語言家來翻譯整個軟件中要顯示的字符串,這個在後面的教程中會講到
    • 為了以後可以進行國際化翻譯,在界面上顯示的字符串一般使用tr()函數包含,這裏我們可以將修改按鈕顯示文本的代碼更改為:

ui->pushButton->setText(tr("新窗口"));

所學教程網址:http://www.qter.org/portal.php?mod=view&aid=27&page=2

設置按鈕文字

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->pushButton->setText("新窗口"); //將界面上按鈕的顯示文本更改為“新窗口”
}
  • ui :
    • 這裏的ui對象就是界面文件對應的類的實例
    • 在mainwindow.h文件中對其進行了定義
    • 我們可以通過它來訪問設計模式添加到界面上的部件
  • pushButton:
    • 前面添加的按鈕部件Push Button,在其屬性面板上可以看到它的objectName屬性的默認值為pushButton
    • 這裏就是通過objectName屬性的值來獲取部件對象的。

技術分享圖片

  • setText()
    • QPushButton類的setText()函數來設置按鈕的顯示文本
  • 語言問題
    • 在代碼中直接使用中文本不是一個好的習慣
    • 建議在編寫程序時使用英文,當程序完成後使用Qt語言家來翻譯整個軟件中要顯示的字符串,這個在後面的教程中會講到
    • 為了以後可以進行國際化翻譯,在界面上顯示的字符串一般使用tr()函數包含,這裏我們可以將修改按鈕顯示文本的代碼更改為:

ui->pushButton->setText(tr("新窗口"));

  • 新建對話框
    • 如圖所示,右鍵項目名稱,選如圖內容
    • 改類名的時候註意類名首字母大寫

技術分享圖片

  • 信號和槽
    • 可以把它們都看做是函數
    • 事件觸發信號,例如這裏單擊按鈕會發射點擊信號clicked()
    • 一般情況下,我們只需要修改槽函數即可,不過,這裏的accept()已經實現了默認的功能,它會將對話框關閉並返回QDialog::Accepted標識,所以無需再做更改
    • 下面我們要使用返回的QDialog::Accepted標識來判斷是否按下了登錄按鈕。

Qt筆記——2.編寫多窗口程序