![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Qt
Qt常见问题
今年五岁!!!
念念不忘,必有回响。
展开
-
Qt_修改文件Qt程序依然没有变化或者修改ui文件中的控件无变化
在qtCreator的构建概要中有一个shadow build的勾选框,默认是勾选的,此时构建目录是可以修改的。而如果把勾选去掉,则构建目录自动变为项目的目录,且不能够修改。原创 2021-03-10 08:38:08 · 1475 阅读 · 0 评论 -
Qt_关于ui_XXX.h文件:
ui_widget.h 是对 widget.ui 文件编译后自动生成的,widget.ui 又是通过 UI 设计器可视化设计生成的。所以,对 ui_widget.h 手工进行修改没有什么意义,所有涉及界面的修改都应该直接在UI 设计器里进行。所以,ui_widget.h 也没有必要添加到项目里。ui_ *.h 是在对 .ui 文件编译后生成的一个文件,ui_ * .h 会出现在编译后的目录下,或与 * . ui 同目录(与项目的 shadow build 编译设置有关,与.pro文件中的UI_DIR=原创 2021-03-09 23:52:15 · 2847 阅读 · 0 评论 -
Qt_如何关联头文件、源文件和ui文件?
1.头文件与源文件首先头文件和源文件就不多说了,头文件放声明,源文件放定义。2.关于ui文件:我们知道在新建项目的时候,可以选择添加*.ui和不添加两种。当添加上ui 文件的时候,我们可以利用designer来添加控件,直观上看到界面的布局,控件的外观如果没有添加ui文件,那么久只能用代码生成。所以,托控件就是在使用Qtdesigner,必须有.ui文件,否则没有ui文件就只能自定义控件了,用代码完成。而且使用.ui文件的话,这源文件中会出现#include “ui_XX.h”,用于关联类与ui文原创 2021-03-09 23:50:31 · 2001 阅读 · 0 评论 -
Qt_界面之间如何联系
可以创建一个Qt的设计师界面类,头文件、源文件以及.ui文件都有,如何关联?显然创建一个头文件时就会创建一个类(该界面的类,是自定义的但肯定继承QMainWindow之类的),那么,关联不就是让该类对象变成其他类的成员变量。有点像使用某些控件一样。...原创 2021-03-09 23:46:23 · 308 阅读 · 0 评论 -
Qt_ui指针
首先看ui指针的定义:在mainwindow.h中private: Ui::MainWindow *ui;Ui又是什么?同在mainwindow.hnamespace Ui {class MainWindow;}本体是ui_mainwindow.h中:namespace Ui { class MainWindow: public Ui_MainWindow {};} // namespace Ui也就是说Ui域中的MainWindow是完全继承自类Ui_MainW原创 2021-03-09 23:39:22 · 1060 阅读 · 0 评论 -
Qt_Qt报错multiple target patterns
去看看pro文件中的路径是否有问题原创 2021-03-09 23:29:35 · 1475 阅读 · 4 评论 -
Qt_Qt报错No rule to make target
第一种情况:Qt编译工程时候,所有用到的源文件包括头文件和库文件的,总路径长度不能超过190个左右字符,一旦超过,就会提示找不到那个文件,这个可能是Qt的makefile的机制问题。解决方法:工程文件夹名字命名尽量比较短,而且工程目录文件夹层次不要太深,反正用到的文件总的路径名字字符数不能超过190。所以在建立qt工程的时候,最好是工程路径比较短,而且所使用到的库文件路径也一样较短,编译没有提示错误证明符合要求。第二种情况:资源文件删除造成的错误。资源文件 resource.qrc 已经编译生成,在原创 2021-03-09 23:27:16 · 2981 阅读 · 1 评论 -
Qt_shadow build
就是构建生成的目录和源代码目录分开,比如工程目录叫test,则编译器自动生成一个test-build-desktop目录存放所有编译过程中生成的文件。当然与之类似的还有在pro文件中添加:MOC_DIR = temp/mocRCC_DIR = temp/rccUI_DIR = temp/uiOBJECTS_DIR = temp/obj这样,编译时生成的临时文件就按不同类型分类放到项目下的temp文件夹中了。...原创 2021-03-09 23:25:31 · 523 阅读 · 0 评论 -
Qt_Qt报错Multiple definition
可能在pro文件中重复添加了某个文件,也有可能是定义时出现重复。可以在Qt中先搜索关键字,查看是否出现重复。一般出现在拷贝代码或者控件时出现,使用Qt搜索试试。原创 2021-03-09 23:16:17 · 302 阅读 · 0 评论 -
Qt_信号与槽
1.信号与槽基本理解信号(Signal)就是在特定情况下被发射的事件槽(Slot)就是对信号响应的函数。槽就是一个函数connect() 是 QObject 类的一个静态函数,而 QObject 是所有 Qt 类的基类,在实际调用时可以忽略前面的限定符,所以可以直接写为:connect(sender, SIGNAL(signal()), receiver, SLOT(slot()));其中,sender 是发射信号的对象的名称,signal() 是信号名称。信号可以看做是特殊的函数,需要带括号,原创 2021-03-08 23:57:07 · 1595 阅读 · 0 评论 -
Qt_自定义控件
1.自定义控件的步骤一般先在类的私有属性中添加控件对象,然后在该类的构造函数中添加布局、connect函数等。2.控件的一些常用函数setParent(&对象名); 因为Qt所有控件都是基于父子关系,如果想要某个让某个控件位于某个窗口上,那必须设置成父子关系,该函数就是如此setText(“string”);设置对话框名称,比如按键上的名称,确认?退出?等等move(100,100);设置相对位置setStyleSheet 设置图形界面的外观实例:class MainWindow :原创 2021-03-08 22:46:36 · 195 阅读 · 0 评论 -
Qt_QMainWindow、QWidget、Qdialog
QMainWindow是带菜单栏之类的是一个窗口,而QWidget则更像一个页面,没有菜单栏之类的。最后Qdialog则是对话框。(个人理解)补充:下图是一些基本模块原创 2021-03-08 22:41:17 · 97 阅读 · 0 评论