linux下qt5.7信号与槽之文本框同步

来源:互联网 发布:网络凶杀2 编辑:程序博客网 时间:2024/06/08 05:26

linux下qt5.7信号与槽之文本框同步

//此乃主函数部分,全W全为自动生成

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


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    signal w;//信号对象创立,自动生成,此乃框架之运用
    w.show();


    return a.exec();
}

//此为自动生成函数的声明,信号可以手动添加声明

#ifndef SIGNAL_H
#define SIGNAL_H


#include <QMainWindow>


namespace Ui {
class signal;//使用UI创立界面对象
}


class signal : public QMainWindow
{
    Q_OBJECT


public:
    explicit signal(QWidget *parent = 0);
    ~signal();
//添加
signals :
   void sng_text_text(QString);//这个可以不用


private slots:


   void on_btn_connnect_clicked();//相应按键的槽函数,添加按钮控件后信号与与之间建立连接后,点击转到曹,,添加槽函数


   void on_btn_disconnect_clicked();


   void on_pushButton_clicked();


   void on_pushButton_2_clicked();//这些槽函数的声明全部通过控件处自动声明,


   void on_btn_connect1_clicked();


   void on_btn_connect2_clicked();
//添加结束此些函数与
private:
    Ui::signal *ui;
};

//此部分为函数定义需自己写
#endif // SIGNAL_H

#include "signal.h"
#include "ui_signal.h"


signal::signal(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::signal)//创建
{
    ui->setupUi(this);
}


signal::~signal()
{
    delete ui;
}
//此些函数为参函数的定义,定义内部内容为手写,其他全为自动生成
void signal::on_btn_connnect_clicked()//这个为按键点击信号函数,信号为click函数,此函数为槽函数函数,其他几个类似
{
       connect(ui->text_input,SIGNAL(textChanged(const QString&)),ui->text_output,SLOT(setText(const QString&)));
       connect(ui->text_input,SIGNAL(textChanged(const QString&)),ui->output_text3,SLOT(setText(const QString&)));
       connect(ui->text_input,SIGNAL(textChanged(const QString&)),ui->output_text2,SLOT(setText(const QString&)));
//connect链接两个控件,信号来文本框的改变,槽函数为settext函数,都为内置
}
void signal::on_btn_disconnect_clicked()
{
    disconnect(ui->text_input,SIGNAL(textChanged(const QString&)),ui->text_output,SLOT(setText(const QString&)));
//断开对象中的两个控件信号与曹之间的链接
}
void signal::on_btn_connect1_clicked()
{
    disconnect(ui->text_input,SIGNAL(textChanged(const QString&)),ui->output_text2,SLOT(setText(const QString&)));


}
void signal::on_btn_connect2_clicked()
{
    disconnect(ui->text_input,SIGNAL(textChanged(const QString&)),ui->output_text3,SLOT(setText(const QString&)));


}

//此部分为qt界面处,最后结果等。控件不能选错,否则会导致有些内置信号不能添加


0 0
原创粉丝点击