Qt5.6安装遇到的问题
运行qt-opensource-windows-x86-mingw492-5.6.0.exe,提示无法启动程序,下载VC运行库就可以运行了。参考
最近要开始忙Qt开发,也开始记录一下期间过程,把Qt开发环境搭建好之后发现在帮助目录没有参考文档,不知道其他朋友有没有遇到类似情况。如果遇到了进入工具菜单->选项->帮助->文档
在Qt->doc文件夹内添加qch文件。
Qt打包发布程序
Qt设置应用程序图标
首先在工程目录下放入ico图标文件,新建.rc文件,输入
IDI_ICON1 ICON DISCARDABLE "XXX.ico"
在项目.pro文件添加下面一行代码RC_FILE += xxx.rc
使用.ui文件
通过Qt设计师界面添加XXX.ui文件,通过拉取控件方式生成界面,编译生成ui_XXX.ui文件。
** Form generated from reading UI file 'dialog.ui'
**
** Created by: Qt User Interface Compiler version 5.6.0
**
** WARNING! All changes made in this file will be lost when recompiling UI file!
********************************************************************************/
#ifndef UI_DIALOG_H
#define UI_DIALOG_H
#include <QtCore/QVariant>
#include <QtWidgets/QAction>
#include <QtWidgets/QApplication>
#include <QtWidgets/QButtonGroup>
#include <QtWidgets/QDialog>
#include <QtWidgets/QHeaderView>
#include <QtWidgets/QLabel>
QT_BEGIN_NAMESPACE
class Ui_Dialog//定义了Ui_Dialog类
{
public:
QLabel *HelloDialog;
void setupUi(QDialog *Dialog)//生成界面的函数
{
if (Dialog->objectName().isEmpty())
Dialog->setObjectName(QStringLiteral("Dialog"));
Dialog->resize(400, 300);
HelloDialog = new QLabel(Dialog);
HelloDialog->setObjectName(QStringLiteral("HelloDialog"));
HelloDialog->setGeometry(QRect(120, 120, 91, 51));//设置了他的大小位置。
retranslateUi(Dialog);//实现了对窗口里面的字符串进行编码转换的功能
QMetaObject::connectSlotsByName(Dialog);//使得窗口中部件按对象名进行信号和槽的关联
} // setupUi
void retranslateUi(QDialog *Dialog)
{
Dialog->setWindowTitle(QApplication::translate("Dialog", "Dialog", 0));
HelloDialog->setText(QApplication::translate("Dialog", "Hello World!!!", 0));
} // retranslateUi
};
namespace Ui {
class Dialog: public Ui_Dialog {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_DIALOG_H
使用ui_XXX.h文件
int main(int argc, char *argv[])
{
QApplication a(argc,argv);
QDialog w;
Ui::HelloDialog ui;
ui.setupUi(&w);
w.show();
return a.exec();
}```
###自定义C++类中添加.ui文件
1.自定义类名和ui文件中类名相同添加命名空间
`namespace Ui{ class Dialog}`
2.定义Q_OBJECT宏扩展普通C++功能,如信号和槽,必须在类的最开始处定义