欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解Qt中QStackedWidget控件的使用

 更新時(shí)間:2023年02月26日 08:25:13   作者:音視頻開(kāi)發(fā)老舅  
這篇文章主要為大家詳細(xì)介紹了Qt中QStackedWidget控件的具體使用,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下

引言

QStackedWidget繼承自QFrame。

QStackedWidget類(lèi)提供了多頁(yè)面切換的布局,一次只能看到一個(gè)界面。

QStackedWidget可用于創(chuàng)建類(lèi)似于QTabWidget提供的用戶(hù)界面。

先來(lái)看看QTabWidget控件的效果:

需要注意的是: QTabWidget的currentTabText用于修改名稱(chēng)。在插入頁(yè)中插入新的界面。

QStackedWidget的屬性

1?、接口(方法)

  • int addWidget(QWidget * widget) 添加頁(yè)面,并返回頁(yè)面對(duì)應(yīng)的索引
  • int count() const 獲取頁(yè)面數(shù)量
  • int currentIndex() const 獲取當(dāng)前頁(yè)面的索引
  • QWidget * currentWidget() const 獲取當(dāng)前頁(yè)面
  • int indexOf(QWidget * widget) const 獲取QWidget頁(yè)面所對(duì)應(yīng)的索引
  • int insertWidget(int index, QWidget * widget) 在索引index位置添加頁(yè)面
  • void removeWidget(QWidget * widget) 移除QWidget頁(yè)面,并沒(méi)有被刪除,只是從布局中移動(dòng),從而被隱藏。
  • QWidget * widget(int index) const 獲取索引index所對(duì)應(yīng)的頁(yè)面

2?、信號(hào)

  • void currentChanged(int index) 當(dāng)前頁(yè)面發(fā)生變化時(shí)候發(fā)射,index為新的索引值
  • void widgetRemoved(int index) 頁(yè)面被移除時(shí)候發(fā)射,index為頁(yè)面對(duì)應(yīng)的索引值

3?、共有槽函數(shù)

  • void setCurrentIndex(int index) 設(shè)置索引index所在的頁(yè)面為當(dāng)前頁(yè)面
  • void setCurre使用ntWidget(QWidget * widget) 設(shè)置QWidget頁(yè)面為當(dāng)前頁(yè)面

一般情況,使用QStackedWidget常用的兩種方式:

根據(jù)currentWidget()來(lái)判斷當(dāng)前頁(yè)面,然后通過(guò)setCurrentWidget()來(lái)設(shè)置需要顯示的頁(yè)面。

根據(jù)currentIndex()來(lái)判斷當(dāng)前頁(yè)面索引,然后通過(guò)setCurrentIndex()來(lái)設(shè)置需要顯示的頁(yè)面。

實(shí)例演示

(實(shí)現(xiàn)QTabWidget的效果,用按鈕觸發(fā)切換界面)

編輯ui界面

編輯代碼(連接信號(hào)槽)

#include "layout.h"
#include"qlabel.h"
#include"qstackedwidget.h"
#include"qpushbutton.h"
#pragma execution_character_set("utf-8")
Layout::Layout(QWidget *parent)
    : QMainWindow(parent)
{
    ui.setupUi(this);
    connect(ui.btn1, &QPushButton::clicked, [=]() {
        ui.stackedWidget->setCurrentIndex(1);
        });
 
    connect(ui.btn2, &QPushButton::clicked, [=]() {
        ui.stackedWidget->setCurrentIndex(2);
        });
 
    connect(ui.btn3, &QPushButton::clicked, [=]() {
        ui.stackedWidget->setCurrentIndex(0);
        });
}

效果展示

到此這篇關(guān)于詳解Qt中QStackedWidget控件的使用的文章就介紹到這了,更多相關(guān)Qt QStackedWidget內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論