小言_互联网的博客

头文件报错,c2039等等一系列问题

476人阅读  评论(0)

项目场景:

项目场景:在写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

转载:https://blog.csdn.net/weixin_44812920/article/details/115618281
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场