stackedWidget控件: 可以自由在多个widget切换,可以通过点击顶部菜单,显示不同界面,在实际开发中应用很广泛。
1. 添加控件, 在设计界面左侧添加 stackedWidget控件
2. 增加几个 widget 界面
3. 将这几个 widget 插入到 stackedWidget
首先定义 一个枚举量, 存放每个界面的编号
enum eStackedWidgetID{eForm1 = 0,eForm2,eForm3}; // 页码编号
在添加时候,建议用 insertWidget 而不用 addWidget,这样在切换界面时候不容易出错,调整顺序和增加新界面时候, 只需修改上面的枚举,其他不用修改。文章来源:https://www.toymoban.com/news/detail-503343.html
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
m_form1 = new Form1(this);
m_form2 = new Form2(this);
m_form3 = new Form3(this);
ui->stackedWidget->insertWidget(eForm1,m_form1);
ui->stackedWidget->insertWidget(eForm2,m_form2);
ui->stackedWidget->insertWidget(eForm3,m_form3);
ui->stackedWidget->setCurrentIndex(eForm1);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
ui->stackedWidget->setCurrentIndex(eForm1);
}
void MainWindow::on_pushButton_2_clicked()
{
ui->stackedWidget->setCurrentIndex(eForm2);
}
void MainWindow::on_pushButton_3_clicked()
{
ui->stackedWidget->setCurrentIndex(eForm3);
}
界面效果就不展示了文章来源地址https://www.toymoban.com/news/detail-503343.html
到了这里,关于QT之多个界面相互切换 (stackedWidget控件)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!