QT的第一个程序:计算器

0、引言

常言说得好,学好C++,走遍天下都不怕。在学习C++的过程中,不得不说,面向对象和面向过程的思想确实有些不同,本文根据吴健老师的QT教程所写,属于学习笔记,仅为备忘及心得,如有错误,还望指出,感谢。
工程文件点这里

1、MVC模式

百度上有较为详尽的资料,再次不做赘述,仅为本文做学习笔记所用

Model:数据处理
文件名:model.cpp / model.h
说明:用于计算器的计算部分(由Controller传入\出数据)

View:界面/交互
文件名:mainwindow.ui
说明:该部分主要是使用QT设计师创建(各个控件的属性重要)

Controller:控制/功能
文件名:mainwindow.cpp / mainwindow.h
说明:该部分作为连接model和View两个部分

2、交互界面备忘

在这里插入图片描述
上图1为本文计算器所采用的交互界面

2.1、label控件
保持右对齐:Qlabel属性中,选中alignment->horizontal->alignright
背景颜色与字体:QWidget属性中,选中stylesheet->add color下拉->background-color
确认objectName

2.2、按钮
确定ObjectName和Qabstractbutton中的text文本(此处属性关系Controller部分的调用)
直接采用go to slot的方法连接信号槽,这里需要注意选定事件(如按键按下),函数名称会是你的ObjectName。

3、代码

3.1、手写信号槽
备注:

this指针只能用在类的内部,通过 this 可以访问类的所有成员,包括 private、protected、public 属性的。

参考:C++ this指针详解(精辟)

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
   
    ui->setupUi(this);
    //连接ui的pushbotton_0,触发信号为按键被按下(bool),对应槽函数为getBtn0;
    connect(this->ui->pushButton_0, SIGNAL(clicked(bool)),this,SLOT(getBtn0()) );
        this->tmp = "";//初始化中间变量
       this->mode=new model;//理解不足,留坑(mode为model类的指针,目的应该是为了调用modele类内部成员)
}
void MainWindow::getBtn0
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值