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完成工程创建

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