《面向对象程序设计》c++第六次作业___calculator SE
c++第五次作业 Calculator SE
PS:这次作业延迟了很久,人要是迷茫啊…………唉~~~~~~
新增GUI界面,使用Qt creator编写,纯代码生成控件、写坐标。
感觉Qt creator非常的舒适,一开始尝试了MFC,但是觉得整个机制比较难懂,而且看网上的评价觉得MFC在被淘汰的边缘,所以毅然决然跳坑选择了Qt,但是静态编译是个大麻烦,不过最后竟然没传成功……早知道写完就传代码了。(安利:最近有WWDC,果粉可以去看看)
使用方法:
- open、close按钮可以开关文件路径、提交按钮,使用电脑键盘键入时建议关闭路径;
- 各种操作按键包括“+”、“-”、“*”、“/”、“^(乘方)”、“.(小数点)”、“( )”、“ESC(清除)”、“BackSpace(回格)”;
- 支持键盘输入、软键盘输入;
- 每次运算结束表达式自动清除;
界面图片:

MainWindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>//界面窗口头文件
#include <qpushbutton.h>//按键头文件
#include <qlabel.h>//标签头文件
#include <qlineedit.h>//单行文本输入框头文件
#include <QKeyEvent>//键盘输入头文件
using namespace std;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
signals:
void numberEmitted(int number);
private slots:
void clear();
//ESC的清除表达式操作
void equals();
//输入等号的操作
void buttonPushed();
//输入数字的操作
void operationPushed();
//输入符号的操作
void setGeo();
//界面生成时规划空间几何位置的操作
void submitPath();
//输入路径后的提交操作
void fileOperation(const char *i,const char *o);
//文件处理操作
void keyPressEvent(QKeyEvent *e);
//键盘输入操作
void addNumber(QString num);
//软键盘键入或键盘键入后的添加数字操作
void addOpe(QString ope);
//软键盘键入或键盘键入后的添加操作符操作
void getResult();
//按下等号后开始计算的操作
void fileOpeAppear();
//打开路径文本条操作
void fileOpeDisappear();
//关闭路径文本条操作
void BackSpace();
//回格操作
private:
QLabel *title;
QLabel *label;
QPushButton *submitButton;
QPushButton *operationButton[10];
QPushButton *buttons[10];
QLineEdit *inputPath;
QLineEdit *outputPath;
QPushButton *filePath;
QPushButton *hideFilePath;
QPushButton *backspace;
};
#endif // MAINWINDOW_H
(此处不贴具体MainWindow.cpp里的操作,有兴趣的同学移步github)
《面向对象程序设计》c++第六次作业___calculator SE的更多相关文章
- Week06《Java程序设计》第六次作业总结
Week06<Java程序设计>第六次作业总结 1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行 ...
- 201621123080《java程序设计》第六周作业总结
201621123080<java程序设计>第六周作业总结 1. 本周学习总结 2. 书面作业 clone方法 1.1 在test1包中编写Employee类,在test2包中新建一个Te ...
- 201621123062《java程序设计》第六周作业总结
1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行一个总结. 注1:关键词与内容不求多,但概念之间的联系要清晰 ...
- 201621123079《java程序设计》第六周作业总结
作业06-接口.内部类 1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图或相关笔记,对面向对象思想进行一个总结. 2. 书面作业 1. c ...
- 《面向对象程序设计》第三次作业 Calculator
c++第三次作业 Calculator git上的作业展示点这里. ps:有一点不是很明确,作业要求:将数字和符号提取出来,得到一组string,然后才将这些string存入队列中.按我的理解是需要将 ...
- 面向对象程序设计(C++)_作业一_设计、定义并实现Complex类
源代码: 运行结果:
- THE LAST ONE!! 2017《面向对象程序设计》课程作业八
THE LAST ONE!! 2017<面向对象程序设计>课程作业八 031602230 卢恺翔 GitHub传送门 题目描述 1.时间匆匆,本学期的博客作业就要结束了,是否有点不舍,是否 ...
- 201871010116-祁英红《面向对象程序设计(java)》第十六周学习总结
博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://ww ...
- 201871010123-吴丽丽 《面向对象程序设计(Java)》第十六周学习总结
201871010123-吴丽丽 <面向对象程序设计(Java)>第十六周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
随机推荐
- 【Leetcode】338. Bit位计数
每次刷leetcode都有一种发现新大陆的感觉. 题目链接:https://leetcode-cn.com/problems/counting-bits/description/ 给定一个非负整数 n ...
- Java SDK夯住(Hang)问题排查
夯住(Hang)是指程序仍在运行,卡在某个方法调用上,没有返回也没有异常抛出:卡住时间从几秒到几小时不等. Java程序发生Hang时,应该首先使用 jstack 把java进程的堆栈信息保存下来 , ...
- 并发编程 —— ScheduledThreadPoolExecutor
1. 前言 在前面的文章中,我们介绍了定时任务类 Timer ,他是 JDK 1.3 中出现的,位于 java.util 包下.而今天说的 ScheduledThreadPoolExecutor的是在 ...
- 学习MVC和jQuery相关的书
Insus.NET还是较喜欢看纸质书.学习ASP.NET MVC和jQuery编程,Insus.NET为了加强功力,决定再购买几本相关的书: 十月份时,还买了一本: 前两本快递刚送到手,后一本已经 ...
- css溢出滚动条及去除滚动条的方法
<div class="father"> <div class="childern"></div> </div> ...
- Asp.net core WebApi 使用Swagger生成帮助页实例
最近我们团队一直进行.net core的转型,web开发向着前后端分离的技术架构演进,我们后台主要是采用了asp.net core webapi来进行开发,开始每次调试以及与前端人员的沟通上都存在这效 ...
- angularjs学习第二天笔记---过滤器
您好,我是一名后端开发工程师,由于工作需要,现在系统的从0开始学习前端js框架之angular,每天把学习的一些心得分享出来,如果有什么说的不对的地方,请多多指正,多多包涵我这个前端菜鸟,欢迎大家的点 ...
- Computer - 在VM7虚拟机中使用主机打印机
在VM7虚拟机中使用主机打印机 在VMware Workstation 7中提供了一项新的功能:虚拟机可以直接使用主机的打印机.在以前的版本中,如果想在虚拟机中使用主机的打印机,一般是在主机创建“打印 ...
- 了解java虚拟机—JVM相关参数设置(2)
1. JVM相关参数设置 JVM相关配置 -XX:+PrintGC 两次次YoungGC,两次FullGC. -XX:+PrintGCDetails 打印GC时的内存,并且在程序结束时打印堆内存使 ...
- TCP Socket Http关系
理解Tomcat内部处理网络数据的机制同时需要了解相关的一些术语,这样我们在阅读源码的时候能更加清楚的理解Connector下使用到的Socket通信原理. TCP/IP: 数据在网络传输是基于TCP ...