zoukankan      html  css  js  c++  java
  • QT 利用ListWidget 和 StackedLayout 配合实现 分页 选项

    1. 如图, 左边为listwidget,右边为StackedLayout, 通过listwidget的不同选项,可以使右边的不同页显示出来。

    2. dialog.h

    #ifndef DIALOG_H
    #define DIALOG_H
    
    #include <QDialog>
    #include <QtGui>
    
    namespace Ui {
    class Dialog;
    }
    
    class Dialog : public QDialog
    {
        Q_OBJECT
        
    public:
        explicit Dialog(QWidget *parent = 0);
        ~Dialog();
        
    private:
        Ui::Dialog *ui;
    
        QListWidget *listWidget;
        QStackedLayout *stackedLayout;
        QHBoxLayout *mainLayout;
    
        QLabel *label1;
        QLabel *label2;
        QLabel *label3;
    
    };
    
    #endif // DIALOG_H
    

    3. dialog.cpp

    #include "dialog.h"
    #include "ui_dialog.h"
    
    Dialog::Dialog(QWidget *parent) :
        QDialog(parent),
        ui(new Ui::Dialog)
    {
        ui->setupUi(this);
    
        setWindowTitle("test stackedlayout");
        mainLayout = new QHBoxLayout;
    
        label1 = new QLabel("label1");
        label2 = new QLabel("label2");
        label3 = new QLabel("label3");
    
        listWidget = new QListWidget;
        listWidget->addItem(tr("item1"));
        listWidget->addItem(tr("item2"));
        listWidget->addItem(tr("item3"));
    
        stackedLayout = new QStackedLayout;
        stackedLayout->addWidget(label1);
        stackedLayout->addWidget(label2);
        stackedLayout->addWidget(label3);
    
        connect(listWidget, SIGNAL(currentRowChanged(int)),
                stackedLayout, SLOT(setCurrentIndex(int)));
        listWidget->setCurrentRow(0);
    
        mainLayout->addWidget(listWidget);
        mainLayout->addLayout(stackedLayout);
    
        setLayout(mainLayout);
    }
    
    Dialog::~Dialog()
    {
        delete ui;
    }
    



     

  • 相关阅读:
    算数表达式二叉树
    Java汉诺塔算法
    Struts2中的设计模式ThreadLocal模式续
    Java基础知识总结(五)
    Java数组扩容算法及Java对它的应用
    Java Arrays.sort源代码解析
    Java字符串排列算法
    Java基础知识总结(三)
    SSIS OLE DB Source中执行带参数的存储过程
    Sql server中Collation conflict问题
  • 原文地址:https://www.cnblogs.com/xj626852095/p/3648224.html
Copyright © 2011-2022 走看看