#include "widget.h"
#include <QApplication>
#include <QSplitter>
#include <QListWidget>
#include <QLayout>
#include <QStackedWidget>
#include <QPushButton>
#include "form1.h"
#include "form2.h"
#include "form3.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QSplitter *a1 = new QSplitter(Qt::Horizontal);//主分割水平
    QListWidget *b = new QListWidget(a1);//左侧列表
    b->addItem('三角形的面积计算');
    b->addItem('矩形的面积计算');
    b->addItem('圆的面积计算');
    //创建右侧部分
    QWidget *p = new QWidget(a1);
    QVBoxLayout *c = new QVBoxLayout(p);
    QStackedWidget *c1 = new QStackedWidget;
    //水平布局
    QHBoxLayout *h = new QHBoxLayout;
    //QPushButton *ps = new QPushButton('修改');
    QPushButton *ps1 = new QPushButton('关闭');
    //QObject::connect(ps1, &QPushButton::clicked, &w, &QWidget::close);
    QObject::connect(ps1, &QPushButton::clicked, &a, &QApplication::quit);//槽函数关闭窗口

    //h->addWidget(ps);
    h->addWidget(ps1);
    h->setAlignment(Qt::AlignRight);
    //把右侧的放入垂直
    c->addWidget(c1);
    c->addLayout(h);
    //w.show();
    //使用Qt界面类创建层叠
    Form1 *d = new Form1;
    Form2 *d1 = new Form2;
    Form3 *d2 = new Form3;
    c1->addWidget(d);//将页面加入层叠
    c1->addWidget(d1);
    c1->addWidget(d2);
    QObject::connect(b, &QListWidget::currentRowChanged, c1, &QStackedWidget::setCurrentIndex);//利用槽函数点击列表对应跳转
    a1->show();//展示
    return a.exec();
}

流程图

  1. 创建主分割器 a1,设置为水平分割
  2. a1 的左侧添加 QListWidget 控件 b,添加三个条目,分别为 '三角形的面积计算'、'矩形的面积计算'、'圆的面积计算'
  3. 创建 QWidget 控件 p,作为 a1 的右侧部分
  4. p 中添加 QVBoxLayout 控件 c
  5. 创建 QStackedWidget 控件 c1,用于层叠显示不同的计算页面
  6. 创建水平布局 QHBoxLayout 控件 h,用于放置按钮
  7. 创建 QPushButton 控件 ps1,设置按钮文本为 '关闭',并连接点击信号与 QApplicationquit 槽函数,用于关闭应用程序
  8. ps1 添加到 h
  9. c1h 添加到 c
  10. 创建 Form1Form2Form3 三个 Qt 界面类的实例 dd1d2,分别用于显示三角形、矩形、圆的面积计算页面
  11. dd1d2 添加到 c1 中,作为层叠页面
  12. 连接 bcurrentRowChanged 信号与 c1setCurrentIndex 槽函数,用于响应列表项的点击,切换显示对应的计算页面
  13. 显示 a1 控件,启动应用程序

功能说明

该代码使用 Qt 框架实现了一个简单的面积计算器,用户可以通过左侧列表选择不同的图形,右侧会显示对应的计算页面。

主要功能包括:

  • 使用 QSplitter 创建水平分割的窗口,将界面分为左右两部分
  • 使用 QListWidget 显示图形选项,并连接 currentRowChanged 信号与 QStackedWidgetsetCurrentIndex 槽函数,实现点击列表选项切换计算页面
  • 使用 QStackedWidget 层叠显示不同的计算页面
  • 使用 QPushButton 创建 '关闭' 按钮,连接点击信号与 QApplicationquit 槽函数,实现关闭应用程序

该代码提供了一个简单示例,可以作为 Qt 开发图形界面的入门参考。

Qt 实现简单的面积计算器

原文地址: https://www.cveoy.top/t/topic/oLEn 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录