qt和vs2015新建ui的问题

想要请教一下,想要写一个项目,想要再新建一个基于QWidget的ui界面,在vs里面我先
新建了一个ui,然后又分别手动的建了.h和.cpp,但是却失败了,在ui(new Ui::login)一直报错,
请教一下,大神们都是怎么做的的呢?

0

3个回答

1.首先把ui文件放到项目的当前路径下.
2.在项目中加载该ui文件,然后先编译一下.
3.在你已经写好的h文件中引用它.比如命名为test.ui.则如下引用.#include "ui_test.h", 你也可以在项目文件中的GeneratedFiles中找到该文件.
4.在h文件的类中加入下面代码.把ui文件的命名空间拉过来.

 Ui::Form ui;

实在不懂的.可以在GeneratedFiles文件下的ui_test.h文件,使用文本编辑器去打开,我一般使用Notepad++.
可以清楚的看到,这个ui文件其实就是一个普通的类文件,只不过把所有的东西都放在了Ui_Form这个类中.最后在Ui这个命名空间内去定义了一个继承Ui_Form这个类的派生类.

 class Ui_Form
{
public:
    QPushButton *pushButton;
    QPushButton *pushButton_2;

    void setupUi(QWidget *Form)
    {
        if (Form->objectName().isEmpty())
            Form->setObjectName(QStringLiteral("Form"));
        Form->resize(400, 300);
        pushButton = new QPushButton(Form);
        pushButton->setObjectName(QStringLiteral("pushButton"));
        pushButton->setGeometry(QRect(130, 80, 75, 23));
        pushButton_2 = new QPushButton(Form);
        pushButton_2->setObjectName(QStringLiteral("pushButton_2"));
        pushButton_2->setGeometry(QRect(130, 190, 75, 23));

        retranslateUi(Form);

        QMetaObject::connectSlotsByName(Form);
    } // setupUi

    void retranslateUi(QWidget *Form)
    {
        Form->setWindowTitle(QApplication::translate("Form", "Form", 0));
        pushButton->setText(QApplication::translate("Form", "PushButton", 0));
        pushButton_2->setText(QApplication::translate("Form", "PushButton", 0));
    } // retranslateUi

};

namespace Ui {
    class Form: public Ui_Form {};
} // namespace Ui

5.在.cpp文件中,ui.setupUi(this);调用类方法去通过ui初始化布局.
6.重新编译一下.可以发现在当前路径的Debug文件夹中生成了这么一个文件,叫做moc_c.cpp.这个是一个元文件.moc文件就是由C++代码去解释Qt的一些关键词后最终的C++代码片段.他有一个前提,类中必须包含Q_OBJECT这个宏.它把Qt中的信号与槽机制用C++中的回调函数来实现.可以使用Notepad++去看最终的代码.
7.之后就可以正常使用啦~如果要进行ui文件和类文件的移值.出现问题的话,可以直接把moc文件也顺便一起带过去.这样有时可以解决一些问题.
全程手打,望采纳,谢谢.

1
qq_37056019
kim.jin 请教一下,在新生成的ui_XXX文件中的命名空间都是一样的,应该怎么解决呢?
大约一年之前 回复
qq_37056019
kim.jin 谢谢,完满的解决了我的问题
大约一年之前 回复
qq_37233607
闭上左眼看世界 由于我的文件名为c.h和c.cpp所以生成的也是moc_c.cpp
大约一年之前 回复

包含头文件,采用qmake编译

-1
qq_37056019
kim.jin 能详细一些吗
大约一年之前 回复

图片说明
图片说明

-1
qq_37056019
kim.jin 我说的是,我想要用qtDesigner进行设计,在自己建好的h和cpp文件中直接写代码进行事件的控制,但是现在我在ui的方向出现了问题,应该怎么解决
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
vs2015 qt5.8新添加文件时出现“无法找到源文件ui.xxx.h”
转载请注明出处:http://www.cnblogs.com/dachen408/p/7147135.html  vs2015 qt5.8新添加文件时出现“无法找到源文件ui.xxx.h”   暂时解决版本:debug和release切换生成即可。
Qt5.7 + VS2015新建一个工程
2017年4月5日17:49:31 编译环境: VS2015+Qt5.8 环境搭建请参考Qt5.7 + VS2015 环境搭建,写的很详细 新建项目 如图选择Qt GUI Application,然后一路next直到finish。我创建了一个名为myTest的工程。 创建完成以后会自动生成所必需的文件,项目的目录结构如下图所示: myTest.ui是窗体文件可以通过双击打开使用Qt
vs环境下QT新建.ui文件无法自动生成ui_xxx.h
在VS2013环境下QT新建.ui文件,但是无法自动生成对应ui_xxx.h文件,出现如下错误。解决方法是右键.ui文件,选择编译,之后就可以打开了。
VS环境下Qt工程.UI文件不生成头文件的问题
在VS环境下创建的Qt工程会出现.UI文件不生成头文件的问题,可以通过右击.ui文件,点击编译生成头文件。 但是,我创建的工程的.ui文件不能编译(右键编译选项是灰的)。这种情况下,只能重新添加一个带UI文件的GUI类(与工程同名),然后将.ui文件拷贝到工程目录下,重新编译即可.
vs2015+QT5添加多个子对话框
在主对话框中Form Files上右键->添加->(最下面)Add Qt Class->Qt GUI Class->修改类名,则能生成对应ui文件、.h文件及.cpp文件啦
QT5在VS2012中使用Qt Designer创建的UI文件与类相关联的问题
在MFC中,新建了一个资源对话框后,只需要Ctrl+W后,可以生成与该对话框相关联的类。但是在VS2012+QT5的组合开发中,在添加了一个新的ui文件后,如何生成一个类与之对应呢? 1,在Qt5中的QtDesigner中生成了一个基于QDialog或者QWidget的界面ui中,编译后,就出现了相应的一个ui_文件名.h的文件,以这userinforDlg.ui为例,简单介绍一下:在Qt De
VS 2015 新建QT项目
打开VS 2015文件 - 新建 - 新建项目选择QT5 Projects - QT Application(没有出现上述菜单的,请重新安装Visual Studio Add-in 1.2.4 for Qt5,并重启VS)QT创建向导选择必要组件默认会选择3个 Core、GUI、Widgets其它按需选择(后期也可以随时修改) 定义主窗口按照QT的习惯,主窗体Class Name 一般叫MainW
QT学习系列:VS2015+QT环境配置后Lauch qt designer失败,无法打开*.ui文件
第一步: 在【解决方案资源管理器】中,右击你的 xxx.ui文件,选择【打开方式】,此时列表中默认值是【 Qt designer】,选中它,点击【移除】按钮。 然后点【添加】按钮,在弹出的窗口中“浏览”,选择你QT版本的安装目录(“D:\Qt5.6.2\5.6\msvc2015\bin” ),选中bin文件夹下的designer.exe。(即把designer.exe自己手动添加进来)。 添加
VS2015+QT5开发,ui界面无法更新问题解决方法
问题描述: 使用VS2015+QT5开发,使用QT designer修改界面后VS编译发现界面仍未更新 原因分析: VS中编译.ui文件的输出文件夹与工程中使用的文件地址不统一 解决方法: 在VS2015中,解决方案资源管理器->右键mainwindow.ui->属性->自定义生成工具->常规->将“命令行”和“输出”里的“.\GeneratedFiles\ui_%(Filename).
Qt5+vs2015无法添加Qt类的问题
Qt5+vs2015无法添加Qt类的问题
VS2015 创建Qt项目
1:创建目录结构 2:新建一个Qt 项目,注意以下几个地方 3:默认继续往下选,直到如下图界面 4:点击finish完成项目创建 5:配置属性表 完成...
vs2013 Qt Designer 新建了XXX.ui 文件,但是没有生成ui_XXX.h文件
在用vs2013 IDE和Qt Designer结合开发界面时,遇到了一个奇怪的问题,就是,新建了XXX.ui 文件,但是没有生成ui_XXX.h文件。找到了解决办法:1、找到uic.exe所在目录,进入cmd2、输入一下代码:uic E:\XXX.ui -o E:\ui_XXX.h就可以再指定目录生成ui_XXX.h文件了...
VS2015的QT工程中*.ui文件无法用designer.exe启动的问题
转载[http://www.cnblogs.com/roadbike/p/5671234.html]Qt无论是在vs里双击ui文件还是直接启动designer.exe都一直无法显示界面,但任务管理器中可以看到该进程是存在的。前几天还正常的,但昨天加了一块NVIDIA的显卡(机器自带核显),可能与此有关。幸好还可以通过QtCreator打开ui文件进行编辑。找到了对应Qt bug但还是打开状态。。。地
vs2013+qt5.5.0创建qt窗口工程
vs2013 + qt5.5.0的插件,创建工程后,直接编译,会一直提示vs版本不同,版本号1600!=1800,编译不过,必须将链接器的系统的子系统改为控制台才能编得过。如下图所示:
VS2015+QT5简单例子(一)
例一:点击button,(label)显示指定数值 1.新建一个QT项目lx.sln(Qt Application) 2.设置头文件路径 项目-属性-VC++目录 (1)设置包含目录QT5.6\5.6\msvc2015_64\include (2)设置库目录QT5.6\5.6\msvc2015_64\lib 3.点击lx.ui 4.加入一个Push Button和la
vs2013使用qt设计师创建新窗体后如何关联资源文件
使用vs2013开发qt,使用qt设计师在原来窗体上创建了一个新ui设计师类后,新生成了一个相应的.ui文件,但是在这个ui文件上无法使用之前已经创建的qrc资源文件。如何添加, 方法如下: 1.需要先将ui文件添加到vs2013工程的Form Files目录下,然后在vs2013工程上右键选择该ui文件,选择打开方式默认值为Qt Designer,点击确定,后双击打开,打开的qt设计师右下角
VS2015 下建立Qt项目及其配置
打开 vsqt.pro文件添加环境变量  D:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\binVS下添加 库添加多个QT版本改变工程到指定的QT版本
QT中使用自己新建的.ui文件的方法
我今天在新建新的QDialog类文件的时候很奇怪额发现了生成的东西里面居然没有了自动生成的xxx.h和xxx.cpp这两个“套餐文件”emmmmm这个时候我就觉得很纳闷那我怎么样使用这个文件呢?开始上网搜有关的内容:其中有一种方法说的就是用uic编译ui文件,uic xxx.ui -o ui_xxx.h但是用这个方法呢,在我的mac下没有办法,terminal提示:uic command not ...
在VS2015中创建Qt项目【VS+Qt项目开发系列】(二)
        在上一篇【VS+Qt项目开发】(一)在VS2015中安装Qt环境中,我们完成了开发环境的安装,现在我们正式创建我们的项目。项目源码已经上传,欢迎下载项目源码~(1)选择:文件 -> 新建 -> 项目,然后选择:模板 -> Visual C++ -> Qt -> Qt GUI Application,输入项目名称,如:“MySolution”(2)选择依...
Qt在vs2013下添加的ui文件中找不到资源图片
用vs2013生成的Qt程序中,生成的ui文件中可以找到添加的资源图片,但是添加现有项(ui文件)中找不到资源,这个时候用Qt Designer打开这个UI文件,在资源浏览器中->编辑资源->导入资源文件->选择资源文件XX.qrc。大功告成
在更换电脑运行vs的qt程序时,.ui文件一点开就会卡死的问题解决
前段时间用QT写界面,在换了一台电脑跑代码的时候,发现一点.ui文件,整个ui文件就会卡死。百度关于这个的答案好少,但朋友表示他们都遇到过。后来还都是从这篇博文里找到的解决方法 ——http://blog.csdn.net/TTendy/article/details/76599409     这里记录一下,在QT的目录下,找到Qt5WebEngineWidgets.dll这个文件,给他随便改
vs2013打开Qt的UI界面时打不开
切换到Qt Designer目录(如 C:\Qt\Qt5.6.2\5.6\msvc2013\bin ),把 Qt5WebEngineWidgets.dll 随便改个名字,例如 Qt5WebEngineWidgets222.dll ,之后就可以打开QtDesigner了。 遇到这个问题的朋友可以先尝试一下此法是否能解决。 但在我这此法无效,无奈,自己摸索发现了一个在我的配置环境下成功解决的方法,即
Qt中Ui文件的使用总结
文章原创,转载请注明链接   Qt中ui文件主要包括3种方式:直接使用法,单继承法和多继承法。 其中直接使用法和单继承法是先单纯地通过QtDesignor设计好界面以及控件信号等保存为ui文件,然后在需要ui的地方(通常是对话框等创建之前)通过UI::引用并创建UI中的控件的对象,如UI::Dialog ui,然后再创建了QDialog对话框dialog对象(dialog为ui中的对象名)之
创建一个Qt Quick UI项目
UI和代码分离的Qt Quick项目
vs2015安装Qt插件
转自:http://my.oschina.net/jthmath/blog/640227?p={{currentPage+1}} 这里给出64位系统下的安装步骤,32位类似。 一、安装VS2015 过程略。值得注意的是要选择需要安装的内容,既然要用Qt,那么C++相关的一定要选上,别的视需要而定。 二、安装Qt5.6 进入http://www.qt.i
QT5.7在VS2015中的使用(1)
一、使用背景 最近开始准备编写毕业论文的软件部分。我的论文内容与双目视觉有关,算法部分基于OpenCV开发,OpenCV的highGUI显然无法完成界面对好用、漂亮的定义。本来想使用C#配合EmguCV开发这个软件,但是感觉EmguCV使用的便利性与OpenCV无法相比,而且资料较少,遇到问题容易卡壳。所以,我准备使用QT来做软件界面,业务逻辑部分使用C++,互取长处。 二、开发环境 我的开
VLC+QT5+VS2015
VLC+QT5+VS2015 实现简单播放器 本地视频流 采用VLC库开发的,需要自己配置VLC的附加库
vs+qt-vs-addin-1.1.11-opensource开发环境下:如何添加qdialog,并可以用设计师设计
我们现在的开发环境是VS2010+QT插件的方式,这个时候我想在某个工程里面添加一个dialog对话框,分三步走: 第一步:用QT Designer 新建一个.ui文件,命名为geostralayerNameChoice.ui,然后完成编辑。 第一:新增加一个dialog类,继承自 QDialog,比如class CGeoStraLayerNameChoiceDialog :publi
VS无法编译ui文件,
vs2013 + Qt 5.7.0环境,新建Qt项目,结果报了这个错误“无法打开包括文件: “ui_XXX.h”: No such file or directory”,此时右键ui文件发现编译是灰色的,如图1,网上查了一下,在Qt的安装目录X:\Qt\Qt5.7.0\5.7\msvc2013\bin下将Qt5WebEngineWidgets.dll修改为Qt5WebEngineWidgets11...
浅谈VS环境下QT中ui界面布局自适应
  刚开始学Qt,纯代码写程序工作量太大,使用ui界面可以省不少代码量。由于我在Vs环境中使用qt desigener,刚开始使用qt中的布局管理时,经常会出现以下问题,排列布局时挺好,预览放大时则变成这个样子,界面内元素不能随窗口变化而改变。下面是我的解决方案首先在我们的顶层ui界面(我这是Userclass)使用布局,我使用的是栅格布局,具体用什么布局看大家自己的排版。预览放大看一下效果自适应...
vs2010中添加qt的对话框
项目添加类,选择qtgui类即可。 创建的类中会包括一个ui文件。
在VS2015中导入/创建静态库并使用静态库【VS+Qt项目开发系列】
本项目示例源码已经上传,欢迎点击下载~注:静态库——在链接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中,这种库称为静态库,其特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。即静态库中的指令都全部被直接包含在最终生成的 EXE 文件中了。在vs中新建生成静态库的工程,编译生成成功后,只产生一个.lib文件。解决方案文件夹目录如下所示——我们接下...
在VS中新建第一个QT的HelloWorld程序
无法打开源文件QtWidgets/QApplication           在很多地方都有可恶的红线,百度之后找到如下解决办法:
QT 下新建windows窗体
   这几天做windows上进程通信发现,windows消息只能在窗口之间传递,不能在控制台之间传递,因为控制台程序没有消息循环,无法接收消息. 普通控制台程序不能提供消息循环,但是QT是提供(app.exec())消息循环的,也就是说是可以接收windows消息的.    先看一下windows新建窗口代码,经典的windows图形程序:  #include <windows.h&g...
VS2015-QT安装配置问题
-
vs2015配置QT环境进行PCL开发
因为向群主学习了PCL开发的入门课程,相关内容还是记录下来好,不然不久以后就忘了,,,在之前配置好vs2015和PCL的基础上再配置QT的开发环境。 先下载相关软件和工具,进入官网的下载页https://www.qt.io/download-open-source/#section-7,按照之前PCL的版本和VS的版本下载QT,还要下载QT的VS插件,具体如下图: 然后将两个软件安装好,之后vs
Qt5学习之路(VS2012下创建一个QT应用程序)
刚开始学习QT在网上找的资料基本都是使用QT Create进行开发的。VS下开发的学习资料感觉很少很难找的到。视频教程也基本没看到过貌似。 因为我们研发中心是使用MFC进行开发开发工具是VS2010 .使用QT开发的话基本我们不会再使用QT Create了。所以把自己的学习的一些资料整理一下贴出。 本文主要熟悉一下信号/槽如何在QT设计师中使用。本例是QT官方文档的一个例子
VS中编辑Qt中ui界面,代码中未更新。。。
在VS2013下使用Qt开发程序过程中遇到了一个问题:编辑ui界面后,代码中检测不到ui界面的改变,运行程序时还是之前的界面。 解决方法: 1.改变ui界面,保存; 2.在VS中的“解决方案资源管理器”中选中ui文件->右键->编译; 3.选中项目->右键->重新扫描解决方案。在代码中试一下“ui->控件名”,是否会识别出来,如果识别出来则成功,如果不行,则再次“扫描解决方案”。
VS系列+QT5开发遇到的部分问题以及解决方案
 VS2010+QT5开发所踩过的坑        最近因为项目需要,vs中写QT,各种踩坑,就想把最后解决的,各种错误和对应的解决方法分享出来,有些是百度别人的,这里把自己成功解决的问题和方案贴出来。     1.错误: C1083          fatal error C1083: 无法打开预编译头文件:“Debug\xxx.pch”: No such file or directory“...
Qt界面显示opencv图像(Qt5.8+opencv3.20+VS2015)
Qt5.8+opencv3.20+VS2015运行,通过UI界面上的按钮打开对话框,选取图片并读入CV:mat中,然后转换为Qimage,并在Qlabel控件上显示。图片会根据Qlabel控件的大小自动适应显示。算是一个最基本的Qt+opencv入门程序。
文章热词 设计制作学习 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 qt教程python qt手游开发教程