Qt 学习笔记--------------------使用纯代码写dialog 与 UI文件

来源:互联网 发布:中国阶层固化 知乎 编辑:程序博客网 时间:2024/06/13 06:15

前面使用拖拉拽实现了一个dialog,这次使用纯代码实现,首先CTRL+N 新建项目选择其他项目 -->Empty qmake  Project ,点击choose知道完成。


然后在项目工程处右键,添加新文件 --> C++ --> C++ Source File 并命名未 main.cpp。

代码如下:

#include<QApplication>
#include<QDialog>
#include<QLabel>
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QDialog w;
    w.resize(400,300);
    QLabel label(&w);
    label.move(100,100);
//  label.setText(QString::fromLocal8Bit("Hello World! 你好 QT!"));
    label.setText("Hello World! 你好 QT!");
    w.show();
    return a.exec();
}

如上代码首先新建QApplication类对象,用于管理应用程序的资源,每个Qt GUI程序都要有个QApplication对象,然后新建个QDialog来实现一个对话框,resize用来改变对话框的大小,参数为宽和高。 然后新建个QLabel对象,将QDialog对象作为参数传入,表面父窗口是对话框。

添加上代码后,发现会出现错误,在include头文件处, 显示 No such file or directory ,这里我们只需要在项目工程的 pro文件下添加

greaterThan(QT_MAJOR_VERSION,4):QT += widgets
即可。

如果Dialog 显示中文错误,可以用QString::fromLocal8Bit来显示中文,如果文件编码为 utf-8的则不需。

二、我们可以给工程添加UI文件。

一样右键添加新文件 ,选择如图



别的自己填就行。

然后我们就可以看到工程里面多一个 UI文件了,双击编辑它,将Label拖入,修改字符串。

然后在main文件添加头文件就可以使用了。

#include"ui_hello2dialog.h"
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QDialog w;
    Ui::Hello2Dialog ui;
    ui.setupUi(&w);
    w.show();
    return a.exec();
}

原创粉丝点击