點擊 <C 語言編程核心突破> 快速C語言入門
Qt學習總結
- 前言
- 十八 QMessageBox消息對話框
- 十九 Qt布局管理
- 總結
前言
要解決問題: 學習qt最核心知識, 多一個都不學.
十八 QMessageBox消息對話框
QMessageBox
消息對話框是Qt中的一個提供用戶交互界面的對話框窗口。
它通常用于在程序中彈出提示框或警告框。
用戶可以通過它來選擇是或否、確定或取消等選項。
QMessageBox
可以顯示文本信息、圖標和按鈕。
常用的QMessageBox
函數有:
-
QMessageBox::about(QWidget *parent, const QString &title, const QString &text)
:顯示一個包含文本和"OK"按鈕的對話框,用于顯示有關應用程序的信息。 -
QMessageBox::warning(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton)
:顯示一個包含警告圖標、文本和按鈕的對話框,詢問用戶是否要繼續操作。 -
QMessageBox::information(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton)
:顯示一個包含信息圖標、文本和按鈕的對話框。 -
QMessageBox::question(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = QMessageBox::Ok | QMessageBox::Cancel, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton)
:顯示一個包含一個有兩個按鈕的圖標和文本的對話框。 -
QMessageBox::critical(QWidget *parent, const QString &title, const QString &text, QMessageBox::StandardButtons buttons = QMessageBox::Ok, QMessageBox::StandardButton defaultButton = QMessageBox::NoButton)
:顯示一個包含錯誤圖標、文本和按鈕的對話框。
這些函數中,除了必須提供的參數外,還可以指定按鈕和默認按鈕的樣式。
注意:以上函數的參數都是可選的,您可以選擇適合您的情況的參數來使用。
通過pushbutton
按鈕以及信號和槽機制, 彈出一個QMessageBox
, 這個在我們以前的示例中已經頻繁使用.
十九 Qt布局管理
Qt布局管理是一種自動化的方式來管理和調整控件的排列和大小,以適應不同的窗口大小和分辨率。
Qt提供了多種布局管理類,如QHBoxLayout、QVBoxLayout、QGridLayout
等,它們分別適用于不同的布局方式和場景。
QHBoxLayout
和QVBoxLayout
是最常用的布局管理類,它們用于水平和垂直布局,
它們都只需要指定一個父控件,然后添加需要放置的子控件,即可自動排列和調整子控件的大小。
除了水平和垂直布局外,QGridLayout
也是一種常用的布局管理方式,它允許將控件按照行和列的方式排列
此外,Qt還提供了其他一些布局管理類,如QFormLayout
, 適用于表單布局場景。
總之,Qt布局管理提供了一種靈活、高效、自適應的控件排列和調整方式,可以有效提高界面開發的效率和可靠性。
以下是它們的常用函數:
QHBoxLayout
:
-
QHBoxLayout(QWidget *parent = Q_NULLPTR)
:構造函數,創建一個水平布局管理器。 -
addWidget(QWidget *widget, int stretch = 0, Qt::Alignment alignment = Qt::Alignment())
:添加控件到布局管理器中, stretch參數表示控件在布局中的拉伸因子,alignment參數表示控件在布局中的對齊方式。 -
setSpacing(int spacing)
:設置控件之間的間距。 -
setMargin(int margin)
:設置布局管理器與父部件之間的邊距。
QVBoxLayout
:
-
QVBoxLayout(QWidget *parent = Q_NULLPTR)
:構造函數,創建一個垂直布局管理器。 -
addWidget(QWidget *widget, int stretch = 0, Qt::Alignment alignment = Qt::Alignment())
:添加控件到布局管理器中,stretch參數表示控件在布局中的拉伸因子,alignment參數表示控件在布局中的對齊方式。 -
setSpacing(int spacing)
:設置控件之間的間距。 -
setMargin(int margin)
:設置布局管理器與父部件之間的邊距。
QGridLayout
:
-
QGridLayout(QWidget *parent = Q_NULLPTR)
:構造函數,創建一個網格布局管理器。 -
addWidget(QWidget *widget, int row, int column, int rowSpan = 1, int columnSpan = 1, Qt::Alignment alignment = Qt::Alignment())
:添加控件到布局管理器中,row和column參數表示控件所在的行和列,rowSpan和columnSpan參數表示控件跨越的行數和列數,alignment參數表示控件在布局中的對齊方式。 -
setSpacing(int spacing)
:設置控件之間的間距。 -
setMargin(int margin)
:設置布局管理器與父部件之間的邊距。
拖入3個button,
使用垂直布局:
使用水平布局:
表單布局:
網絡布局:
總結
十八 QMessageBox消息對話框
十九 Qt布局管理
點擊 <C 語言編程核心突破> 快速C語言入門