12.[QT | c2039]在原有的程序里新加qt文件

在开发Btm_Ver_2.0时遇到提示框错误,原因是手动添加的.h和.cpp文件与.ui文件不匹配。错误集中在pass.h文件中,password对象出现红色波浪线,报错c2039等。解决方案包括重新绘制UI界面或手动修改ui_password.h文件,确保类名与UI文件名一致。此问题属于QT界面开发中的常见问题,解决方法涉及Qt Creator的UI文件管理和代码同步。
摘要由CSDN通过智能技术生成

项目场景:

项目场景:在写Btm_Ver_2.0时,负责加入一个提示框,显示输入密码进入管理员模式,出现了一些错误。


问题描述:

提示:pass.h文件中,password出现红色波浪线。会报错c2039等等一系列问题。

private:
	Ui::password ui;

附上password.h文件中的所有代码:

#pragma once
#include <QWidget>
#include "ui_password.h"
#include<QGraphicsItemGroup>
#include<QGraphicsScene>
#include<QGraphicsView>
#include<QGraphicsPixmapItem>
#include<QProgressDialog>


class password : public QWidget
{
	
	Q_OBJECT

public:
	password(QWidget *parent = Q_NULLPTR);
	~password();

private:
	Ui::password ui;

public slots:
	void on_pushButton_cancel_clicked();
	void on_pushButton_determine_clicked();
};

原因分析:

当初在整个大程序里面添加弹出框时,是先添加.ui文件,然后手动添加的.h和.cpp文件。导致ui_password.h文件里一些变量名字对不上。


解决方案:

有两个方法:

一、重新画ui界面图

在这里插入图片描述
点击添加->add to class->QtWidgetsClass;然后会自己出现.h文件和.cpp文件,不能进行手动添加。

二、更改ui_password.h文件

第一个修改的地方,在class Ui_password,将ui后的名字改为ui文件的名字。

/********************************************************************************
** Form generated from reading UI file 'password.ui'
**
** Created by: Qt User Interface Compiler version 5.8.0
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/

#ifndef UI_PASSWORD_H
#define UI_PASSWORD_H

#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QGridLayout>
#include <QtWidgets/QHBoxLayout>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
#include <QtWidgets/QLineEdit>
#include <QtWidgets/QPushButton>
#include <QtWidgets/QSpacerItem>
#include <QtWidgets/QWidget>

QT_BEGIN_NAMESPACE

class Ui_password
{
public:

第二个修改的地方,文件的最下部,将class后的和public后的文件改为ui界面的名字。

namespace Ui {
    class password : public Ui_password {};
} // namespace Ui

QT_END_NAMESPACE

#endif // UI_PASSWORD_H

更多qt+vs问题,请看:
VS+QT问题汇总

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值