Qt之按鈕(QRadioButton)

簡述

QRadioButton小部件提供帶有文本標籤的單選按鈕。

QRadioButton是一個選項按鈕,可以打開(選中)或關閉(取消選中)。單選按鈕通常向用戶顯示“多個”選項。在一組單選按鈕中,一次只能選中一個單選按鈕。如果用戶選擇另一個按鈕,則先前選擇的按鈕將關閉。

默認情況下,單選按鈕是自動互斥的。如果啓用了自動互斥,則屬於同一父控件的單選按鈕的行爲就好像它們屬於同一按鈕組的一樣。如果需要屬於同一父控件的多個互斥按鈕組,請將它們放入QButtonGroup中。

用法

效果

源碼

    QGroupBox *groupBox1 = new QGroupBox("按鈕組1");
    QRadioButton *radioBtn1_1 = new QRadioButton("一號男嘉賓");
    radioBtn1_1->setChecked(true);
    QRadioButton *radioBtn1_2 = new QRadioButton("二號男嘉賓");
    QRadioButton *radioBtn1_3 = new QRadioButton("三號男嘉賓");
    QVBoxLayout *vLayout1 = new QVBoxLayout;
    vLayout1->addWidget(radioBtn1_1);
    vLayout1->addWidget(radioBtn1_2);
    vLayout1->addWidget(radioBtn1_3);
    groupBox1->setLayout(vLayout1);

    QGroupBox *groupBox2 = new QGroupBox("按鈕組2");
    QRadioButton *radioBtn2_1 = new QRadioButton("一號女嘉賓");
    radioBtn2_1->setChecked(true);
    QRadioButton *radioBtn2_2 = new QRadioButton("二號女嘉賓");
    QRadioButton *radioBtn2_3 = new QRadioButton("三號女嘉賓");
    QVBoxLayout *vLayout2 = new QVBoxLayout;
    vLayout2->addWidget(radioBtn2_1);
    vLayout2->addWidget(radioBtn2_2);
    vLayout2->addWidget(radioBtn2_3);
    groupBox2->setLayout(vLayout2);

    QHBoxLayout *layout = new QHBoxLayout;
    layout->addWidget(groupBox1);
    layout->addWidget(groupBox2);
    this->setLayout(layout);

總結

QRadioButton的接口和普通按鈕一樣,用法也差不多。

QRadioButton按鈕用於多選一的場合,當然也可以通過QButtonGroup的setExclusive方法實現多選多,但是,我們不這樣做,因爲QRadioButton被創造的目的就是方便我們實現多選一。多選多應當用QCheckBox。

引用


[1] Qt助手

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章