中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

u網(wǎng)站建設(shè)蘭州網(wǎng)絡(luò)seo

u網(wǎng)站建設(shè),蘭州網(wǎng)絡(luò)seo,ui設(shè)計怎么收費(fèi),購物網(wǎng)站用那個軟件做文章目錄 1. QAbstractButton 簡介2. QPushButton2.1 例子1,設(shè)置按鈕的圖標(biāo)2.2 例子2,設(shè)置按鈕快捷鍵 3. QRadioButton3.1 介紹3.2 例子1,選擇性別3.3 例子2,試試其他的信號3.3 例子3,分組 4. QCheckBox4.1 介紹4.2 例…

文章目錄

  • 1. QAbstractButton 簡介
  • 2. QPushButton
    • 2.1 例子1,設(shè)置按鈕的圖標(biāo)
    • 2.2 例子2,設(shè)置按鈕快捷鍵
  • 3. QRadioButton
    • 3.1 介紹
    • 3.2 例子1,選擇性別
    • 3.3 例子2,試試其他的信號
    • 3.3 例子3,分組
  • 4. QCheckBox
    • 4.1 介紹
    • 4.2 例子1,獲取復(fù)選框的內(nèi)容

1. QAbstractButton 簡介

QPushButton 繼承? QAbstractButton。這個類是?個抽象類.是其他按鈕的?類。QAbstractButton繼承自QWidget

下面是QAbstractButton的一些屬性

屬性說明
text按鈕中的?本
icon按鈕中的圖標(biāo)
iconSize按鈕中圖標(biāo)的尺?
shortCut按鈕對應(yīng)的快捷鍵
autoRepeat按鈕是否會重復(fù)觸發(fā).當(dāng)?標(biāo)左鍵按住不放時,如果設(shè)為true,則會持續(xù)產(chǎn)??標(biāo)點(diǎn)擊事件;如果設(shè)為false,則必須釋放?標(biāo),再次按下?標(biāo)時才能產(chǎn)?點(diǎn)擊事件. (相當(dāng)于游戲?柄上的"連發(fā)"效果)
autoRepeatDelay重復(fù)觸發(fā)的延時時間.按住按鈕多久之后,開始重復(fù)觸發(fā).
autoRepeatInterval重復(fù)觸發(fā)的周期

2. QPushButton

2.1 例子1,設(shè)置按鈕的圖標(biāo)

創(chuàng)建qrc文件,并導(dǎo)入圖片

image-20241117142305745

使用qt designer創(chuàng)建一個按鈕

外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳

代碼如下,使用了setIcon()setIconSize()

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);QIcon icon(":/btnPic.png");ui->pushButton->setIcon(icon);ui->pushButton->setIconSize(QSize(100, 100));
}

效果如下

image-20241117142810637

2.2 例子2,設(shè)置按鈕快捷鍵

導(dǎo)入圖片

image-20241117153944517

image-20241117154009240

設(shè)置按鈕

image-20241117154345209

編寫代碼,設(shè)置圖標(biāo)和快捷鍵

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);// 設(shè)置圖標(biāo)ui->targetBtn->setIcon(QIcon(":/img/plane"));ui->targetBtn->setIconSize(QSize(100, 100));ui->upBtn->setIcon(QIcon(":/img/up"));ui->upBtn->setIconSize(QSize(50, 50));ui->downBtn->setIcon(QIcon(":/img/down"));ui->downBtn->setIconSize(QSize(50, 50));ui->leftBtn->setIcon(QIcon(":/img/left"));ui->leftBtn->setIconSize(QSize(50, 50));ui->rightBtn->setIcon(QIcon(":/img/right"));ui->rightBtn->setIconSize(QSize(50, 50));// 設(shè)置快捷鍵ui->upBtn->setShortcut(Qt::Key_W);ui->downBtn->setShortcut(Qt::Key_S);ui->leftBtn->setShortcut(Qt::Key_A);ui->rightBtn->setShortcut(Qt::Key_D);
}

寫槽函數(shù)

void Widget::on_upBtn_clicked()
{QRect pos = ui->targetBtn->geometry();ui->targetBtn->setGeometry(pos.x(), pos.y()-10, pos.width(), pos.height());
}void Widget::on_downBtn_clicked()
{QRect pos = ui->targetBtn->geometry();ui->targetBtn->setGeometry(pos.x(), pos.y()+10, pos.width(), pos.height());
}void Widget::on_leftBtn_clicked()
{QRect pos = ui->targetBtn->geometry();ui->targetBtn->setGeometry(pos.x()-10, pos.y(), pos.width(), pos.height());
}void Widget::on_rightBtn_clicked()
{QRect pos = ui->targetBtn->geometry();ui->targetBtn->setGeometry(pos.x()+10, pos.y(), pos.width(), pos.height());
}

完成了

image-20241117155843432

鍵盤快捷鍵默認(rèn)一直按是有連發(fā)功能的,如果想讓鼠標(biāo)一直按也有連發(fā)功能,可以使用setAutoRepeate()方法

// 讓upBtn有連發(fā)功能
ui->upBtn->setAutoRepeat(true);

如果想要觸發(fā)按鈕有多個按鍵,可以使用+號連接

// ctrl+w觸發(fā)
ui->upBtn->setShortcut(Qt::CTRL+Qt::Key_W);

3. QRadioButton

3.1 介紹

單選按鈕,繼承自QAbstractButton ,下面是QRadioButton常用的QAbstractButton 的一些屬性

屬性說明
checkable是否能選中
checked是否已經(jīng)被選中.checkable是checked的前提條件.
autoExclusive是否排他.選中?個按鈕之后是否會取消其他按鈕的選中.對于 QRadioButton 來說默認(rèn)就是排他的.

同理,上面的屬性都有一個setXXX()的方法

3.2 例子1,選擇性別

widget.ui里設(shè)置基本界面

image-20241122222337628

槽函數(shù)如下

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);ui->label->setText("選擇的性別是: 男");    // 設(shè)置label的默認(rèn)值
}void Widget::on_radioButton_male_clicked()
{ui->label->setText("選擇的性別是: 男");
}void Widget::on_radioButton_female_clicked()
{ui->label->setText("選擇的性別是: 女");
}void Widget::on_radioButton_other_clicked()
{ui->label->setText("選擇的性別是: 其它");
}

如果想讓這個按鈕默認(rèn)被選中,可以在構(gòu)造函數(shù)這樣寫

ui->radioButton_male->setChecked(true);

如果不想讓 其它 這個按鈕被選擇,可以在構(gòu)造函數(shù)里這樣寫

ui->radioButton_other->setCheckable(false);

運(yùn)行后發(fā)現(xiàn),確實(shí)該按鈕不能被選中了,但是仍然可以響應(yīng)槽函數(shù)

image-20241122222756991

如果不想讓其響應(yīng)槽函數(shù),可以直接設(shè)置enable屬性,在QWidget里學(xué)過

ui->radioButton_other->setEnabled(false);

image-20241122222941832

3.3 例子2,試試其他的信號

widet.ui中拖上兩個radiobutton,轉(zhuǎn)到槽

image-20241123143851127

clicked()點(diǎn)擊,preassed()按下,released() 釋放信號,都很好理解。這里給這兩個radiobutton提那幾另外兩個槽函數(shù)

void Widget::on_radioButton_1_clicked(bool checked)
{qDebug() << "on_radioButton_1_clicked checked: " << checked;
}void Widget::on_radioButton_2_toggled(bool checked)
{qDebug() << "on_radioButton_2_toggled: " << checked;
}

運(yùn)行結(jié)果如下

image-20241123144508445

  • 可以看到,對于clicked(bool),當(dāng)按鈕被點(diǎn)擊時,checked會被置成true,且每次點(diǎn)擊都會觸發(fā)。
  • 對于toggled(bool),當(dāng)按鈕被點(diǎn)擊時,checked會被置成true,連續(xù)點(diǎn)擊不會改變值,當(dāng)按鈕被切換時,會將checked置成false。
  • toggled(bool) 非常適合使用于QRadioButton

3.3 例子3,分組

widget.ui中搭出基本框架

image-20241123160808157

image-20241123161309155

現(xiàn)在按鈕是全部排它的,也就是這8個按鈕只能選擇1個,現(xiàn)在要將其分組,在widget.cpp的構(gòu)造函數(shù)里寫

Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget)
{ui->setupUi(this);QButtonGroup* gp1 = new QButtonGroup(this);QButtonGroup* gp2 = new QButtonGroup(this);QButtonGroup* gp3 = new QButtonGroup(this);// 將按鈕添加到GroupBox中gp1->addButton(ui->radioButton_A1);gp1->addButton(ui->radioButton_A2);gp1->addButton(ui->radioButton_A3);gp2->addButton(ui->radioButton_B1);gp2->addButton(ui->radioButton_B2);gp2->addButton(ui->radioButton_B3);gp3->addButton(ui->radioButton_C1);gp3->addButton(ui->radioButton_C2);
}

外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳

4. QCheckBox

4.1 介紹

QCheckBox繼承自QAbstractButton 表?復(fù)選按鈕.可以允許選中多個,下面兩個屬性是比較常用的

屬性說明
checkable是否能選中
checked是否已經(jīng)被選中.checkable是checked的前提條件.

4.2 例子1,獲取復(fù)選框的內(nèi)容

widget.ui中創(chuàng)建3個復(fù)選框, 1個按鈕

外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機(jī)制,建議將圖片保存下來直接上傳

image-20241123164047503

QPushButton添加槽函數(shù)

void Widget::on_pushButton_clicked()
{QString s = "TODO: ";if(ui->checkBox->isChecked() == true) {s += ui->checkBox->text();s += " ";}if(ui->checkBox_2->isChecked() == true) {s += ui->checkBox_2->text();s += " ";}if(ui->checkBox_3->isChecked() == true) {s += ui->checkBox_3->text();s += " ";}ui->label->setText(s);
}

image-20241123164135005

http://www.risenshineclean.com/news/53711.html

相關(guān)文章:

  • 大學(xué)網(wǎng)站html模板百度競價托管一月多少錢
  • 湘潭seo 推廣快湘潭磐石網(wǎng)絡(luò)圖片優(yōu)化軟件
  • 有沒有做任務(wù)一樣的網(wǎng)站兼職自媒體推廣渠道
  • 網(wǎng)頁安全站點(diǎn)設(shè)置游戲優(yōu)化軟件
  • 企業(yè)網(wǎng)站模板優(yōu)化中國十大品牌營銷策劃公司
  • 吉安網(wǎng)站建設(shè)優(yōu)化服務(wù)公司網(wǎng)站設(shè)計
  • 網(wǎng)站建設(shè)維護(hù)合同上海優(yōu)化外包公司排名
  • 響應(yīng)式網(wǎng)站滑動如何注冊百度賬號
  • 手機(jī)建站圖片推廣軟文300字范文
  • 濟(jì)南網(wǎng)站建設(shè) 薦搜點(diǎn)網(wǎng)絡(luò)廣告聯(lián)盟接單賺錢平臺
  • wordpress頁面屬性模板怎么添加泰安網(wǎng)站推廣優(yōu)化
  • 上海網(wǎng)站建設(shè)技術(shù)托管軟文臺
  • 政府網(wǎng)站開發(fā)周期自己做一個網(wǎng)站
  • 網(wǎng)站運(yùn)營流程18款免費(fèi)軟件app下載
  • 杭州網(wǎng)站設(shè)計詢問藍(lán)韻網(wǎng)絡(luò)跟我學(xué)seo
  • idea網(wǎng)站開發(fā)上海網(wǎng)站建設(shè)開發(fā)
  • 做it的在哪個網(wǎng)站找工作百度注冊公司網(wǎng)站
  • android做網(wǎng)站網(wǎng)站怎么做
  • 做網(wǎng)站重慶今天的病毒感染情況
  • 域名設(shè)計與分析沈陽seo排名優(yōu)化推廣
  • 設(shè)計需要看的網(wǎng)站有哪些seo英文怎么讀
  • 自己做的網(wǎng)站如何被百度檢索優(yōu)秀的軟文廣告案例
  • 網(wǎng)站建設(shè)優(yōu)化服務(wù)好么搜狗站長平臺驗證網(wǎng)站
  • 太原網(wǎng)站制作電話百度搜索排行
  • 全球最好的設(shè)計網(wǎng)站怎么找拉新推廣平臺
  • 網(wǎng)站建設(shè)公司公司好免費(fèi)b2b推廣網(wǎng)站大全
  • 網(wǎng)站建設(shè)軟件下載西安seo服務(wù)公司
  • 網(wǎng)站的字體做多大合適如何推廣自己的產(chǎn)品
  • 建站公司maxsem競價托管多少錢
  • 網(wǎng)站開發(fā)人月薪網(wǎng)絡(luò)營銷方法有哪幾種