资源简介
QT计算器:QT 计算器 键盘输入 窗口按钮输入 功能全实现 支持15位小数 HOHO~~~
代码片段和文件信息
#include “cal.h“
#include “ui_cal.h“
#include
/**********************************************************************
//QT的工作原理:
注意Qt的工作原理:
(1)在构造函数将通过QtDesigner的创建的界面通过setupUi创建,必须先创建,才能在构造函数中使用
(2)将界面控件的信号操作和槽进行连接;
(3)同时初始化界面窗口配件的属性
通过以上的步骤就能实现了界面到类,类和事件消息的关联。而主函数中,则进行循环等待事件即可;
***********************************************************************/
QCal::QCal()
{
//在构造函数中将Ui::cal类中的数据初始化,并引入在
Ui::cal::setupUi(this);//在新建类中的构造函数中,调用Ui::cal类中的setupUi函数,
//使用setupUi函数创建一个与用户指定的窗口控件
lineEdit->setText(“0“);//初始化线性编辑狂的文本为0
GetNumber=“0“;//初始化变量
zeroStr=“0“;//初始化变量
Flag=cal_enter;/*四则运算的暂存值*/;
StoreNumber=“0“;
ResultFlag=Pointstate=Flagstate=false;/*四则运算按键是否按下状态*/;//小数点按下标志
connect(oneSIGNAL(clicked())thisSLOT(Getnumber()));
connect(twoSIGNAL(clicked())thisSLOT(Getnumber()));
connect(threeSIGNAL(clicked())thisSLOT(Getnumber()));
connect(fourSIGNAL(clicked())thisSLOT(Getnumber()));
connect(fiveSIGNAL(clicked())thisSLOT(Getnumber()));
connect(sixSIGNAL(clicked())thisSLOT(Getnumber()));
connect(sevenSIGNAL(clicked())thisSLOT(Getnumber()));
connect(eightSIGNAL(clicked())thisSLOT(Getnumber()));
connect(nineSIGNAL(clicked())thisSLOT(Getnumber()));
connect(zeroSIGNAL(clicked())thisSLOT(Getnumber()));
connect(pointSIGNAL(clicked())thisSLOT(Calculate()));
connect(pnSIGNAL(clicked())thisSLOT(Calculate()));
connect(sqrtSIGNAL(clicked())thisSLOT(Calculate()));
connect(diverseSIGNAL(clicked())thisSLOT(Calculate()));
connect(BackSpaceSIGNAL(clicked())thisSLOT(Calculate()));
connect(clearSIGNAL(clicked())thisSLOT(Calculate()));
connect(addSIGNAL(clicked())thisSLOT(Calculate()));
connect(subSIGNAL(clicked())thisSLOT(Calculate()));
connect(mulSIGNAL(clicked())thisSLOT(Calculate()));
connect(modeSIGNAL(clicked())thisSLOT(Calculate()));
connect(divSIGNAL(clicked())thisSLOT(Calculate()));
connect(enterSIGNAL(clicked())thisSLOT(Calculate()));
}
void QCal::Getnumber()
{
QString str;
str=((QPushButton *)sender())->text();//获取每个按键的text值,sender是QWidGet的成员,在这里只能将其变为
GetNumber=lineEdit->text();//每次进入都获取编辑框的文本
if(Flagstate==false)
{
if(GetNumber==zeroStr)//只有第一次并且按下0时进入这里,如果GetNumber是和按下0不相等,则设置其为新值,以后不在进入
{
if(str==zeroStr)
lineEdit->setText(zeroStr);
else
{
GetNumber=str;
lineEdit->setText(GetNumber);
}
}
else
{
GetNumber=GetNumber+str;
lineEdit->setText(GetNumber);
}
}
else
{
Pointstate=false;
Flagstate=false;
GetNumber=str;
lineEdit->setText(GetNumber);
}
}
void QCal::Calculate()
{
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 8560 2011-11-17 11:47 cal\cal.cpp
文件 923 2011-11-17 11:07 cal\cal.h
文件 104 2011-11-16 09:56 cal\cal.pro
文件 21242 2011-11-17 11:50 cal\cal.pro.user
文件 9668 2011-11-16 21:52 cal\cal.ui
文件 531 2011-11-16 12:14 cal\main.cpp
目录 0 2011-11-17 11:50 cal
----------- --------- ---------- ----- ----
41028 7
- 上一篇:转子试验台振动测量数据.zip
- 下一篇:Labview串口全功能支持 带VI源码
相关资源
- 8051与1601LCD设计的计算器
- Qt编写串口调试助手V2016终结版
- 装修费计算器H5版
- 基于qt4串口调试助手
- QtQuick实现无边框窗口的拉伸,拖拽
- vs+Qt 实现版本中英文切换
- Qt StackWidget切换动画
- qt网络五子棋
- QWidget实现QDialog的exec方法
- qt_zmq.zip
- 模拟微波炉的桌面小程序qt,qp状态机
- Qt spi测试
- QT自定义多行表头
- DM2路基断面方量计算器.EXE
- QT简单程序源码——猜字游戏
- 基于单片机和LCD12864的简易计算器
- Qt控件QListWidget实现鼠标拖拽Item换序
- 五子棋棋盘的QT实现
- linux下基于V4L2/Qt的usb摄像头采集显示
- Qt的Excel操作添加了新建Excel文件的功
-
qt/qml MediaPla
yerDemo - Qt编写 - 多功能画图板
- labview程序制作的计算器程序
- 基于QT实现2048小游戏
- qt model view Delegate的
- 安卓简易计算器项目代码与文档
- QT TableView
- Qt控件的拖放
- qt实现复杂的计算,复杂算法
- 负指数分布排队模型计算器
评论
共有 条评论