QT--day2(信号与槽,多界面跳转)

这篇具有很好参考价值的文章主要介绍了QT--day2(信号与槽,多界面跳转)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

QT--day2(信号与槽,多界面跳转),qt,开发语言 第一个界面头文件:

#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QIcon>  //图标头文件
#include <QPushButton>  //按钮类头文件

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT    //有关信号与槽的元对象

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();


signals:
    void my_signal();
public slots:
    void btn1_slot();//自定义槽函数

private:
    Ui::Widget *ui;  //使用ui界面对应头文件中的命名空间中的类定义的指针

    QPushButton *btn1;
};

#endif // WIDGET_H

第一个界面源文件:

#include "widget.h"       //引入自定义头文件
#include "ui_widget.h"   //引入ui界面的头文件

Widget::Widget(QWidget *parent)
    : QWidget(parent)        //调用父类的有参构造
    , ui(new Ui::Widget)     //构造出ui界面拖拽的成员,并且将地址赋值给ui指针
{
    ui->setupUi(this);    //周用设置界面函数,给ui界面上的组件申请空间
    //设置窗口大小
    this->resize(600,400);
    //设置窗口标题
    this->setWindowTitle("聊天室");
    //设置窗口图标
    this->setWindowIcon(QIcon("E:\\嵌入式\\QT\\图标库\\icon_h8db9qyxft\\QQ.png"));

    //添加按钮
    btn1=new QPushButton("登录",this);
    btn1->resize(100,50);
    btn1->move(400,300);
    btn1->setIcon(QIcon("E:\\photo\\9.jpg"));

    //将按钮1的clicked信号连接到自定义的信号中
    connect(btn1,&QPushButton::clicked,this,&Widget::btn1_slot);
}

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

void Widget::btn1_slot()
{
    //跳转到第二个界面
    emit my_signal();
    //将自身界面关闭
    this->close();
}


第二个界面头文件:

#ifndef SECOND_H
#define SECOND_H

#include <QWidget>

namespace Ui {
class second;
}

class second : public QWidget
{
    Q_OBJECT

public:
    explicit second(QWidget *parent = nullptr);
    ~second();

public slots:
    void jump_slot();

private:
    Ui::second *ui;
};

#endif // SECOND_H

第二个界面源文件:

#include "second.h"
#include "ui_second.h"

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

}

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

void second::jump_slot()
{
    this->show();
}

测试文件:

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

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

    second s;
    QObject::connect(&w,&Widget::my_signal,&s,&second::jump_slot);
    return a.exec();
}

效果:

QT--day2(信号与槽,多界面跳转),qt,开发语言

 QT--day2(信号与槽,多界面跳转),qt,开发语言

 文章来源地址https://www.toymoban.com/news/detail-609906.html

到了这里,关于QT--day2(信号与槽,多界面跳转)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式QT (Qt 信号与槽)

    因为有了信号与槽的编程机制,在 Qt 中处理界面各个组件的交互操作时变得更加直观和简单。 信号 (Signal)就是在特定情况下被发射的事件。 GUI 程序设计的主要内容就是对界面上各组件的信号的响应,只需要知道什么情况下发射哪些信号,合理地去响应和处理这些信号就

    2024年02月02日
    浏览(51)
  • QT 信号与槽

     .h文件 .cpp文件 现象

    2024年02月02日
    浏览(42)
  • qt中的信号与槽

    connect有好几种形式 连接方式有 连接类型 说明 Qt::AutoConnection 如果发送者和接收者在同一线程,使用Qt::DirectConnection,否则使用Qt::QueuedConnection Qt::DirectConnection 信号被发射时立即执行,信号和槽函数在同一线程 Qt::QueuedConnection 在事件循环回到接收者线程后执行槽函数,信号和槽

    2024年02月07日
    浏览(41)
  • QT基础【5-信号与槽】

    🌈个人主页:godspeed_lucip 🔥 系列专栏:QT从基础到进阶 推荐使用这种写法,信号名字、槽函数名字写错了,编译器会直接报错 参数解释: 第一个参数:信号的发出者 第二个参数:发出的信号 第三个参数:信号的接受者 第四个参数:处理的槽函数 效果: 信号槽机制不只在

    2024年02月21日
    浏览(43)
  • QT的核心——信号与槽

    目录 回顾C 语言信号 1、信号与槽 2、关联信号与槽 2.1自动关联信号与槽 2.2手动关联信号与槽 2.3断开信号与槽 3、自定义信号 3.1自定义信号使用条件 3.2自定义槽函数使用条件 4、信号与槽参数传递 4.1自定义一个带参的信号 4.2关联带参的信号与槽 4.3发送一个带参的信号 5、信

    2024年02月12日
    浏览(50)
  • 2、QT的信号与槽

    connect(信号的发送者,SIGNAL(信号名称),信号的接收者,SLOT(槽函数)); QT 4 的写法 QT 5的写法 控件生成信号定义: ①、在需要接收信号的类中 声明槽函数 ②、在xxx.cpp 中实现槽函数 ③、进行信号与槽的关联 用户自定义信号: ①、在信号的发送者类中声明信号 ②、关联信号与槽

    2024年02月10日
    浏览(44)
  • Qt——Qt工作原理:事件驱动、信号与槽机制

    Qt作为一个现代的GUI(图形用户界面)框架,采用了事件驱动的编程范式,并引入了信号与槽机制,以实现高度交互和松耦合的程序设计。下面详细解释了相关概念,以及如何在Qt中使用它们。 事件是在GUI应用程序中的控件上产生的各种动作、操作或状态变化,例如鼠标移动

    2024年02月10日
    浏览(43)
  • 【快速上手QT】03-信号与槽connect

    都说信号与槽是QT的精髓(别问谁说的,问就是我说的),那么我们首先先知道什么是信号和槽。 信号就是信号,可以由任何组件去发送,而QT提供的组件可可以发送信号,比如QPushButton(没错,还是以它为例),当我们按下QPushButton的时候,实际上QPushButton会发出信号,那为

    2024年02月21日
    浏览(47)
  • Qt 之 QPushButton,信号与槽机制

    当我们开发基于Qt框架的图形用户界面(GUI)应用程序时,经常需要在界面上添加按钮来实现用户交互。Qt提供了一个名为 QPushButton 的类作为按钮控件的实现。QPushButton是Qt中的标准按钮类,旨在简化按钮的创建和使用。 头文件 :#include QPushButton QPushButton 用于 接受用户点击事

    2024年02月12日
    浏览(49)
  • QT中信号与槽机制的介绍,以及信号与槽连接的几种方式

    功能:实现多个组件之间的相互通信,是QT引以为傲的核心机制 信号:就是信号函数,定义在类体的signals权限下,是一个不完整的函数,只有声明没有定义; 槽:就是槽函数,定义在类体的slots权限下,是一个完整的函数,既有声明也有定义,也可以当做普通函数被使用 无

    2024年02月10日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包