目錄
一、常用的四種按鈕
二、按鈕接口詳情
2.1 按鈕的屬性
2.2 按鈕的信號(hào)
?2.3 以LineEdit為例子設(shè)置字體,顏色,布局格式的變化
一、常用的四種按鈕
普通按鈕(QPushButton)
工具按鈕(QToolButton)
單選按鈕(QRadioButton)
復(fù)選框(QCheckBox)
共同屬于QAbstractButton類
二、按鈕接口詳情
2.1 按鈕的屬性
?????????????????????????????????
屬性 | 屬性值類型 | 功能 |
text | QString | 按鈕顯示的文字 |
icon | QIcon | 按鈕的圖標(biāo) |
shortcut | QKeySequence | 按鈕的快捷鍵 |
checkable | bool | 按鈕是否可復(fù)選 |
checked | bool | 按鈕是否復(fù)選狀態(tài) |
autoExclusive | bool | 在一個(gè)布局或容器組件內(nèi)的同類按鈕是否是互斥的。 |
autoRepeat | bool | cliced()、pressed()、released()信號(hào)。初次重復(fù)的延遲時(shí)間由屬性autoRepeatDelay決定,重復(fù)的周期由屬性autoRepeatInterval決定,時(shí)間單位都是毫秒。 |
autoDefault | bool | 按鈕是否為自動(dòng)默認(rèn)按鈕 |
default | bool | 按鈕是否為默認(rèn)按鈕 |
flat | bool | flat = true 時(shí),按鈕沒(méi)有邊框,只有被電擊或復(fù)選時(shí)才顯示按鈕邊框。 |
????????QCheckBox增加的tristate屬性,表示是否有三種復(fù)選狀態(tài),即Checked、Unchecked和PartiallyChecked??梢杂肣AbstractButton定義的函數(shù)isChecked()和setChecked()讀取和設(shè)置復(fù)選狀態(tài),也可以用QCheckBox中定義的checkState()和setCheckState()讀取和設(shè)置復(fù)選狀態(tài)。
2.2 按鈕的信號(hào)
QAbstractButton類定義了如下信號(hào):
void clicked(bool checked = false)? ? ? ? //點(diǎn)擊按鈕時(shí)
void pressed()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//按下Space鍵或鼠標(biāo)左鍵時(shí)
void released()? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //釋放Space鍵或鼠標(biāo)左鍵時(shí)??
void toggled(bool checked)? ? ? ? ? ? ? ? ? ?//按鈕的checked屬性值變化時(shí)? ? ?
?QCheck定義的新信號(hào)
void QCheckBox::stateChanged(int state)
//當(dāng)復(fù)選框的復(fù)選按鈕狀態(tài)變化時(shí),組件發(fā)射此信號(hào)。如果復(fù)選框的tristate屬性設(shè)置為false,也就是只有兩種狀態(tài)時(shí),stateChanged()信號(hào)和toggled()信號(hào)作用一樣。
?2.3 以LineEdit為例子設(shè)置字體,顏色,布局格式的變化
例子來(lái)自《Qt6 C++開發(fā)指南》 samp4_05。
可觀看下面鏈接加深理解。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-808547.html
4.5常用的按鈕組件_嗶哩嗶哩_bilibilihttps://www.bilibili.com/video/BV1km4y1k7CW?p=29&vd_source=9f6a57780f9760d9cdd025dbc388f3ba文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-808547.html
void Widget::on_pushButton_clicked()
{
//居左
ui->lineEdit->setAlignment(Qt::AlignLeft);
}
void Widget::on_pushButton_2_clicked()
{
//居中
ui->lineEdit->setAlignment(Qt::AlignCenter);
}
void Widget::on_pushButton_3_clicked()
{
//居右
ui->lineEdit->setAlignment(Qt::AlignRight);
}
void Widget::on_pushButton_4_clicked(bool checked)
{
//粗體
QFont font = ui->lineEdit->font();
font.setBold(checked);
ui->lineEdit->setFont(font);
}
void Widget::on_pushButton_5_clicked(bool checked)
{
//斜體
QFont font = ui->lineEdit->font();
font.setItalic(checked);
ui->lineEdit->setFont(font);
}
void Widget::on_pushButton_6_clicked(bool checked)
{
//下劃線
QFont font = ui->lineEdit->font();
font.setUnderline(checked);
ui->lineEdit->setFont(font);
}
void Widget::on_checkBox_clicked(bool checked)
{
//只讀
ui->lineEdit->setReadOnly(checked);
}
void Widget::on_checkBox_2_clicked(bool checked)
{
//是否能編輯
ui->lineEdit->setEnabled(checked);
}
void Widget::on_checkBox_3_clicked(bool checked)
{
//清空內(nèi)容
ui->lineEdit->setClearButtonEnabled(checked);
}
void Widget::on_radioButton_clicked()
{
//黑色
QPalette plet = ui->lineEdit->palette();
plet.setColor(QPalette::Text,Qt::black);
ui->lineEdit->setPalette(plet);
}
void Widget::on_radioButton_2_clicked()
{
//紅色
QPalette plet = ui->lineEdit->palette();
plet.setColor(QPalette::Text,Qt::red);
ui->lineEdit->setPalette(plet);
}
void Widget::on_radioButton_3_clicked()
{
//藍(lán)色
QPalette plet = ui->lineEdit->palette();
plet.setColor(QPalette::Text,Qt::blue);
ui->lineEdit->setPalette(plet);
}
到了這里,關(guān)于第四章 Qt 常用按鈕組件的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!