zoukankan      html  css  js  c++  java
  • 《面向对象程序设计》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)

  • 相关阅读:
    vue相关ajax库的使用
    vue-router核心概念
    Vue.js核心概念
    vue核心概念
    SQL 的各种 JOIN 用法
    应用Itextsharp 添加图片到pdf
    MVC区域路由设置
    LINQ to Entities 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
    使用命令行执行.sql文件
    MVC异常捕获处理,FilterConfig
  • 原文地址:https://www.cnblogs.com/vayhang-E-airshiner/p/5586865.html
Copyright © 2011-2022 走看看