qt creater创建自己的第一个小程序

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38313246/article/details/81748020

1.1我的版本Qt Creator 4.6.2 (Enterprise)

1.2打开qt creater 新建工程 选择QT Widgets Application 

1.3自己写入工程名称(不支持中文

1.4 选择编译方式 为MinGW 32bit 选这个创建工程速度会快点

1.5选择基类为widget

1.6完成工程创建

扫描二维码关注公众号,回复: 4992934 查看本文章

1.7进入工程之后 找到你的widget.ui文件 双击进入

1.8在左侧找到对应的按钮、文本编辑框和标签 鼠标左键按着拖动到右侧界面上 布局上呢和我们前一篇博客实现的效果相同

1.9点击任何一个组件 右侧对应的就是它的 名字 名字上双击可以进行修改(红色处 最大最小值相同可以锁定大小

1.10 设置各个组件的参数 看起来舒服点

1.11(字体大小的改变)点击右侧的组件名-选定这个组件 右击--改变更多信息文本

1.12(字体 字号、颜色 的改变)

1.13shift + alt + r 查看效果

1.14(为组件添加效果) 选择pushbutton组件 右击 转到槽

1.14.1选择 clicked 当点击 pushbutton的时候就做出反应

1.15 自动连接到这个函数 函数内 创建一个进程 进程执行文本框内输入的内容

1.16 其余的 一个文本框lineedit 我们用宏实现 信号与 槽的连接    --两个pushbutton调用组件类里的函数用lamba表达式输出浏览信息

最终效果图:

把里面的代码给大家,先操作 错了再来源码看 哪里的问题

main.cpp

#include "widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    Widget w;
    w.show();

    return a.exec();
}

widget.cpp

#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);


    //需要上面 先进行Ui的初始化 在用以下语句
    connect(ui->lineEdit,SIGNAL(returnPressed()),this,SLOT(on_commit_clicked()));//通过宏实现 信号 和 槽 的连接
    //        谁连接      发出什么信号(回车         谁处理     用什么函数处理

    connect(ui->pushButton_2,&QPushButton::clicked,this,&Widget::cancelButtonslot);

    connect(ui->pushButton_3,&QPushButton::clicked,
            [this]()
            {
                qDebug()<<"browse: helloword"<<endl;

                QMessageBox::information(this,"浏览提示","浏览键被按下");
            }
            );//lamba表达式
}

Widget::~Widget()
{
    delete ui;
}

void Widget::on_pushButton_clicked()
{
    QString proceesName = ui->lineEdit->text();
    QProcess *myProcess = new QProcess(this);        //获取文本数据
    myProcess->start(proceesName);
}

void Widget::cancelButtonslot()
{
    this->close();
}

widget.h (用到什么就添加什么的头文件

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QDebug>
#include <QMessageBox>
#include <QProcess>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();

private slots:
    void on_pushButton_clicked();
    void cancelButtonslot();

private:
    Ui::Widget *ui;
};

#endif // WIDGET_H

猜你喜欢

转载自blog.csdn.net/qq_38313246/article/details/81748020