C++和qt designer的混合编程--动态计算加法小工具

C++和qt designer的混合编程--动态计算加法小工具,第1张

C++和qt designer的混合编程--动态计算加法小工具

文章目录
  • 前言
  • 一、准备工作
  • 二、开发步骤
    • 1.新建文件夹
    • 2.编辑add.ui文件
    • 2.具体实现
      • 2.1 编辑add.h文件
      • 2.2 编辑add.cpp文件
      • 2.3 关联槽函数
  • 总结

前言


最近的工作岗位需要使用C++与qt designer的编程环境进行项目的开发,现在和我一起开始进行第一个C++和qt designer的混合编程项目吧。


一、准备工作


进行开发前,你需要:
1.一台电脑
2.visual studio2008(我使用的是企业版,如果只是学习的小伙伴,可以选择其他版本)
3.qt designer

如果电脑上没有在visual studio上进行qt的配置的童鞋先配置好环境后再往下阅读。

项目的开发过程是在vs2008使用qt designer上设计的界面,然后使用c++设计程序逻辑


二、开发步骤 1.新建文件


1.打开vs2008
2.点击文件——>新建——>项目
3.如下图


点击finish后,就建好了第一个项目,文件夹的结构如下图:

其中需要我们进行编辑的文件有
1.add.ui qt designer进行界面设计的文件;
2.add.cpp 编写具体函数等;
3.addTool.h 申明界面类;


2.编辑add.ui文件

代码如下(示例):
双击add.ui文件后,打开如下图:

红色方框中的界面就是我们需要编辑的界面。

在qt designer的左边导航栏选择加入2个spin控件,5个Label和1个Text Browser。

改变spin控件中的值后,在Test Browser中会显示当前时刻两个加数的和。

如图,改变label控件大小的方法:

选中控件后,给控件命名,在右侧属性栏中,找到objectname,并把spin控件分别命名。第一个spin控件命名为add1,第二个spin控件命名为add2,Text Browser控件命名为result。如图:

设计好界面后,让我们看看最后的效果图:


2.具体实现 具体的实现,我们要解决把对控件的 *** 作和代码关联起来。所以我们要解决两个问题: 1.当spin控件的值改变时,如何让TextBrowser中的值随之改变? 2.在类中如何使用控件的变量
2.1 编辑add.h文件

1.针对第一个问题,打开add.h文件,我们可以看到Ui::addClass ui;


所有的界面上的变量都可以理解为ui的成员变量,我们就能解决第一个问题了。

2.针对第二个问题,我们在add.h这个文件中添加构造函数和槽函数。

qt中有一个机制——信号槽,信号槽的大致意思是假设界面上点击某一个按钮后d出对话框,这个点击的 *** 作就是信号,“d出对话框”的实现是通过槽来实现的,我们只需要在add.h中添加构造函数和槽函数。

add.h文件代码如下:

#ifndef ADD_H
#define ADD_H

#pragma once

#include 
#include "ui_add.h"

class add : public QMainWindow
{
	Q_OBJECT

public:
	add(QWidget *parent = 0, Qt::WFlags flags = 0);
	~add();

private:
	Ui::addClass ui;

	private slots:
	void add1_valueChanged(int value);
	void add2_valueChanged(int value);
};

#endif // ADD_H

2.2 编辑add.cpp文件

add.cpp文件代码如下:

#include "add.h"

add::add(QWidget *parent, Qt::WFlags flags)
	: QMainWindow(parent, flags)
{
	ui.setupUi(this);
}

add::~add()
{

}

void add::add1_valueChanged(int value)
{
	ui.result->setText(QString::number(value +ui.add2->value()));
}


void add::add2_valueChanged(int value)
{
	ui.result->setText(QString::number(value + ui.add1->value()));
}

2.3 关联槽函数

写好槽函数后,我们需要把控件和槽函数进行关联。如图:


先选中spin控件,再点击第二步方框红色方框的图标,接下来选中spin控件使用鼠标左键将控件下拉,点击编辑,增加槽函数add1_valueChanged(int)
add2_valueChanged(int)
对第一个spin控件添加add1_valueChanged(int)如图所示:

点击确定后,对第二个spin控件进行同样的 *** 作,添加add2_valueChanged(int)。

关联好后如图所示:


现在可以开执行C++程序了,运行后的效果如图所示:

总结 我也是看了网上一些大佬的代码,自己复现出来的,并且在这期间出现了很多错误(呜呜呜)。。。如果大家在实现过程中出现什么问题了,欢迎一起讨论!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4654050.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-06
下一篇 2022-11-06

发表评论

登录后才能评论

评论列表(0条)

保存