实现简单的计算器(设计UI)
要点说明:
1、一个textedit控件,其余全部是button控件,button布局方式:栅格布局(Grid layout)
2、对窗体的Title进行修改(默认是工程名)
3、在ui文件中设计的UI,编译器会自动创建一个类,在这个类的创建依据就是在用户自定义的类中说明的:
通过ctrl+鼠标左键可以查看生成的类的详细情况:
/********************************************************************************
** Form generated from reading UI file 'dialog.ui'
**
** Created by: Qt User Interface Compiler version 5.12.3
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/ #ifndef UI_DIALOG_H
#define UI_DIALOG_H #include <QtCore/QVariant>
#include <QtWidgets/QApplication>
#include <QtWidgets/QDialog>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QLabel>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QVBoxLayout> QT_BEGIN_NAMESPACE class Ui_Dialog
{
public:
QVBoxLayout *verticalLayout;
QLabel *lab_display;
QGridLayout *gridLayout;
QPushButton *btn_7;
QPushButton *btn_8;
QPushButton *btn_9;
QPushButton *btn_add;
QPushButton *btn_4;
QPushButton *btn_5;
QPushButton *btn_6;
QPushButton *btn_dec;
QPushButton *btn_1;
QPushButton *btn_2;
QPushButton *btn_3;
QPushButton *btn_mult;
QPushButton *btn_c;
QPushButton *btn_0;
QPushButton *btn_eq;
QPushButton *btn_div; void setupUi(QDialog *Dialog)
{
if (Dialog->objectName().isEmpty())
Dialog->setObjectName(QString::fromUtf8("Dialog"));
Dialog->resize(, );
verticalLayout = new QVBoxLayout(Dialog);
verticalLayout->setSpacing();
verticalLayout->setContentsMargins(, , , );
verticalLayout->setObjectName(QString::fromUtf8("verticalLayout"));
lab_display = new QLabel(Dialog);
lab_display->setObjectName(QString::fromUtf8("lab_display"));
lab_display->setStyleSheet(QString::fromUtf8("font: 24pt \"Algerian\";\n"
"background-color: rgb(190, 190, 255);"));
lab_display->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); verticalLayout->addWidget(lab_display); gridLayout = new QGridLayout();
gridLayout->setSpacing();
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
btn_7 = new QPushButton(Dialog);
btn_7->setObjectName(QString::fromUtf8("btn_7"));
QSizePolicy sizePolicy(QSizePolicy::Minimum, QSizePolicy::Expanding);
sizePolicy.setHorizontalStretch();
sizePolicy.setVerticalStretch();
sizePolicy.setHeightForWidth(btn_7->sizePolicy().hasHeightForWidth());
btn_7->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_7, , , , ); btn_8 = new QPushButton(Dialog);
btn_8->setObjectName(QString::fromUtf8("btn_8"));
sizePolicy.setHeightForWidth(btn_8->sizePolicy().hasHeightForWidth());
btn_8->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_8, , , , ); btn_9 = new QPushButton(Dialog);
btn_9->setObjectName(QString::fromUtf8("btn_9"));
sizePolicy.setHeightForWidth(btn_9->sizePolicy().hasHeightForWidth());
btn_9->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_9, , , , ); btn_add = new QPushButton(Dialog);
btn_add->setObjectName(QString::fromUtf8("btn_add"));
sizePolicy.setHeightForWidth(btn_add->sizePolicy().hasHeightForWidth());
btn_add->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_add, , , , ); btn_4 = new QPushButton(Dialog);
btn_4->setObjectName(QString::fromUtf8("btn_4"));
sizePolicy.setHeightForWidth(btn_4->sizePolicy().hasHeightForWidth());
btn_4->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_4, , , , ); btn_5 = new QPushButton(Dialog);
btn_5->setObjectName(QString::fromUtf8("btn_5"));
sizePolicy.setHeightForWidth(btn_5->sizePolicy().hasHeightForWidth());
btn_5->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_5, , , , ); btn_6 = new QPushButton(Dialog);
btn_6->setObjectName(QString::fromUtf8("btn_6"));
sizePolicy.setHeightForWidth(btn_6->sizePolicy().hasHeightForWidth());
btn_6->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_6, , , , ); btn_dec = new QPushButton(Dialog);
btn_dec->setObjectName(QString::fromUtf8("btn_dec"));
sizePolicy.setHeightForWidth(btn_dec->sizePolicy().hasHeightForWidth());
btn_dec->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_dec, , , , ); btn_1 = new QPushButton(Dialog);
btn_1->setObjectName(QString::fromUtf8("btn_1"));
sizePolicy.setHeightForWidth(btn_1->sizePolicy().hasHeightForWidth());
btn_1->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_1, , , , ); btn_2 = new QPushButton(Dialog);
btn_2->setObjectName(QString::fromUtf8("btn_2"));
sizePolicy.setHeightForWidth(btn_2->sizePolicy().hasHeightForWidth());
btn_2->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_2, , , , ); btn_3 = new QPushButton(Dialog);
btn_3->setObjectName(QString::fromUtf8("btn_3"));
sizePolicy.setHeightForWidth(btn_3->sizePolicy().hasHeightForWidth());
btn_3->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_3, , , , ); btn_mult = new QPushButton(Dialog);
btn_mult->setObjectName(QString::fromUtf8("btn_mult"));
sizePolicy.setHeightForWidth(btn_mult->sizePolicy().hasHeightForWidth());
btn_mult->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_mult, , , , ); btn_c = new QPushButton(Dialog);
btn_c->setObjectName(QString::fromUtf8("btn_c"));
sizePolicy.setHeightForWidth(btn_c->sizePolicy().hasHeightForWidth());
btn_c->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_c, , , , ); btn_0 = new QPushButton(Dialog);
btn_0->setObjectName(QString::fromUtf8("btn_0"));
sizePolicy.setHeightForWidth(btn_0->sizePolicy().hasHeightForWidth());
btn_0->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_0, , , , ); btn_eq = new QPushButton(Dialog);
btn_eq->setObjectName(QString::fromUtf8("btn_eq"));
sizePolicy.setHeightForWidth(btn_eq->sizePolicy().hasHeightForWidth());
btn_eq->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_eq, , , , ); btn_div = new QPushButton(Dialog);
btn_div->setObjectName(QString::fromUtf8("btn_div"));
sizePolicy.setHeightForWidth(btn_div->sizePolicy().hasHeightForWidth());
btn_div->setSizePolicy(sizePolicy); gridLayout->addWidget(btn_div, , , , ); verticalLayout->addLayout(gridLayout); verticalLayout->setStretch(, );
verticalLayout->setStretch(, ); retranslateUi(Dialog); QMetaObject::connectSlotsByName(Dialog);
} // setupUi void retranslateUi(QDialog *Dialog)
{
Dialog->setWindowTitle(QApplication::translate("Dialog", "\350\256\241\347\256\227\345\231\250", nullptr));
lab_display->setText(QApplication::translate("Dialog", "", nullptr));
btn_7->setText(QApplication::translate("Dialog", "", nullptr));
btn_8->setText(QApplication::translate("Dialog", "", nullptr));
btn_9->setText(QApplication::translate("Dialog", "", nullptr));
btn_add->setText(QApplication::translate("Dialog", "+", nullptr));
btn_4->setText(QApplication::translate("Dialog", "", nullptr));
btn_5->setText(QApplication::translate("Dialog", "", nullptr));
btn_6->setText(QApplication::translate("Dialog", "", nullptr));
btn_dec->setText(QApplication::translate("Dialog", "-", nullptr));
btn_1->setText(QApplication::translate("Dialog", "", nullptr));
btn_2->setText(QApplication::translate("Dialog", "", nullptr));
btn_3->setText(QApplication::translate("Dialog", "", nullptr));
btn_mult->setText(QApplication::translate("Dialog", "*", nullptr));
btn_c->setText(QApplication::translate("Dialog", "C", nullptr));
btn_0->setText(QApplication::translate("Dialog", "", nullptr));
btn_eq->setText(QApplication::translate("Dialog", "=", nullptr));
btn_div->setText(QApplication::translate("Dialog", "/", nullptr));
} // retranslateUi }; namespace Ui {
class Dialog: public Ui_Dialog {};
} // namespace Ui QT_END_NAMESPACE #endif // UI_DIALOG_H
实现简单的计算器(设计UI)的更多相关文章
- NHIBERNATE的简单框架的设计
NHIBERNATE的简单框架的设计 上次的 NHibernate的Session管理策略和NHibernateHelper 发布并提供下载,给NHibernate刚入门的同学们带来很多便利. 最近有 ...
- 使用qt制作一个简单的计算器
前言:今天使用qt制作了一个很简单的计算器,觉得挺有意思的,所以在这里跟大家分享一下. 这里先跟大家说说使用到的函数: 一.槽连接函数 connect(信号发送者,发送的信号,信号接收者,信号接收者的 ...
- 从0到1:使用Caliburn.Micro(WPF和MVVM)开发简单的计算器
从0到1:使用Caliburn.Micro(WPF和MVVM)开发简单的计算器 之前时间一直在使用Caliburn.Micro这种应用了MVVM模式的WPF框架做开发,是时候总结一下了. Calibu ...
- JAVA 图形开发之计算器设计(事件监听机制)
/*文章中用到的代码只是一部分,需要源码的可通过邮箱联系我 1978702969@qq.com*/ 前段时间刚帮同学用MFC写了个计算器,现在学到JAVA的图形开发,就试着水了一个计算器出来.(可以说 ...
- PyQt5系列教程(二)利用QtDesigner设计UI界面
软硬件环境 OS X EI Capitan Python 3.5.1 PyQt 5.5.1 PyCharm 5.0.1 前言 在PyQt5系列教程的第一篇http://blog.csdn.net/dj ...
- js制作简单的计算器
学着做了一个简单的计算器!记录记录!哈哈 <!DOCTYPE html> <html> <head> <title>简单的计算器</title&g ...
- 留念 C语言第一课简单的计算器制作
留念 C语言第一课简单的计算器制作 学C语言这么久了. /* 留念 C语言第一课简单的计算器制作 */ #include<stdio.h> #include<stdlib.h ...
- 信息安全系统设计基础课程实践:简单TUI游戏设计
简单TUI游戏设计 目 录 一 Curses库简介与基本开发方法 ...
- jsp学习---使用jsp和JavaBean实现超简单网页计算器
一.需求 如题,用jsp实现一个超简单的网页计算器. 二.实现 1.效果图 1)初始界面: 2)随便输入两个数进行相乘: 3)当除数为零时提示报错: 2.代码 Calculator.java pack ...
- JS实现一个简单的计算器
使用JS完成一个简单的计算器功能.实现2个输入框中输入整数后,点击第三个输入框能给出2个整数的加减乘除.效果如上: 第一步: 创建构建运算函数count(). 第二步: 获取两个输入框中的值和获取选择 ...
随机推荐
- 前端之JavaScript:JS简单介绍
JavaScript(JS)之简单介绍 一.JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名Scr ...
- Ubuntu 16.04 + GTX970 + cuda8.0.44安装配置等问题(转)
参考:https://blog.csdn.net/u010094199/article/details/54380086 参考:https://blog.csdn.net/jonms/article/ ...
- iOS---实现在屏幕上实时绘图的简单效果---CAShaperLayer和UIBezierPath的简单运用
首先,声明几个属性 @property(nonatomic,strong)UIBezierPath * beizer; @property(nonatomic,assign)CGPoint start ...
- 软件安装——internal error2503/2502
安装新的软件后先报internal error 2503,随后报internal error 2502.就是不让我装新的软件,提示说发生严重错误,然后安装失败. Solution for intern ...
- 设计模式学习笔记——Visitor 访问者模式
1.定义IVisitor接口,确定变化所涉及的方法 2.封装变化类.实现IVisitor接口 3.在实体类的变化方法中传入IVisitor接口,由接口确定使用哪一种变化来实现(封装变化) 4.在使用时 ...
- http协议的深刻理解
https://www.cnblogs.com/mayite/p/9095986.html
- vue-cli目录结构介绍
一个vue-cli的项目结构如下: 文件结构细分: 1.build——[webpack配置] build文件主要是webpack的配置,主要启动文件是dev-server.js,当我们输入npm ru ...
- sqlserver 获取存储过程执行时间
use [数据库名] select last_execution_time '最近一次执行时间' from sys.dm_exec_procedure_stats where type='P' ...
- fedora23安装php,mysql
httpd: 他的服务器根: ServerRoot, 是在/etc/httpd. 因为httpd所有的配置文件, 运行文件等都在这里.所以这是他的根. httpd的配置文件: httpd.conf恰好 ...
- HTML-空格字符实体
不换行空格,全称No-Break Space,它是最常见和我们使用最多的空格,大多数的人可能只接触了 ,它是按下space键产生的空格.在HTML中,如果你用空格键产生此空格,空格是不会累加的(只 ...