以Dialog为例(MainWindow同理)
Ubuntu+CLion+gcc
1.在External tools里打开UIDesigner,即先前设置好的QtDesigner
2.新建一个Form,选择为底部带有botton的Dialog
3.然后自行布局,保存到工程的某个文件夹下(例如ui文件夹下的dialog.ui)
4.选中dialog.ui文件,在external tools里运行UIC,即先前设置好的uic,将ui文件转化为.h文件(这里转化后的文件名直接默认为Ui_dialog.h)
注意到.h文件的末尾是:
namespace Ui {
class Dialog: public Ui_Dialog {};
} // namespace Ui
这个命名空间Ui和类Dialog就是等会我们要在MainDialog类的头文件中先声明的,这里不要弄错
5.创建一个C++类MainDialog(将于界面相关的东西都放在ui文件夹中)
.h:
#ifndef INDOORROAD_MAINDIALOG_H
#define INDOORROAD_MAINDIALOG_H
#include <QtWidgets/QDialog>
namespace Ui{
class Dialog;
}
class MainDialog :public QDialog{
public:
explicit MainDialog(QWidget* parent=0);
~MainDialog();
private:
Ui::Dialog *ui;
};
.cpp:
#include "MainDialog.h"
#include "Ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent):
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
}
6.设置程序入口
Main.cpp
#include "ui/MainDialog.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainDialog d;
d.show();
return a.exec();
}
- CMAKELIST中的相应设置:
cmake_minimum_required(VERSION 3.8)
project(proName)
set(CMAKE_CXX_STANDARD 11)
find_package(Qt5 REQUIRED COMPONENTS Core Gui OpenGL)
set(SOURCE_FILES main.cpp ui/MainWindow.cpp ui/MainWindow.h ui/Ui_mainwindow.h)
add_executable(proName ${SOURCE_FILES})
target_link_libraries(proName Qt5::Core Qt5::Gui)
然后就可以运行了
网友评论