当前位置: 首页 > news >正文

网上做网站资金大概多少营销网站建设大概费用

网上做网站资金大概多少,营销网站建设大概费用,免费网站空间申请哪个好,钢结构人才网这里写目录标题 自定义的信号自定义的槽自定义的信号和槽的结合使用信号和槽的断开总结: 自定义的信号 信号就是一个函数声明 前面咱们都用的qt组件自带的信号,接下来我们自己写一个信号。 信号只需要在前面加一个signals即可 这个函数不需要实现 参数传…

这里写目录标题

  • 自定义的信号
  • 自定义的槽
  • 自定义的信号和槽的结合使用
  • 信号和槽的断开
  • 总结:

自定义的信号

信号就是一个函数声明

前面咱们都用的qt组件自带的信号,接下来我们自己写一个信号。

信号只需要在前面加一个signals即可
这个函数不需要实现
参数传了一个自定义的类型

在这里插入图片描述
在这里插入图片描述

自定义的槽

当有了自定义的信号,咱们再去搞一个自定义的槽。
在这里插入图片描述

注意:在自定义的槽函数,前面加了slots,其实也可以不加,但是不加的话,槽函数将无法使用转换成字符串的方式进行关联,因此建议在自定义槽函数时,最好加上slots.

槽函数是必须要做实现的在mainwindow.cpp中
在这里插入图片描述
然后咱们用一个按钮点击信号去关联咱们自定义的槽函数
随便教一下大家如何去用代码创建主键。
首先在mainwindow.h中添加按钮的数据类型

要包含头文件QPushButton

在这里插入图片描述
然后在mainwindow.cpp中new一个按键,并进行位置和大小的设置,最后设置按钮文字
在这里插入图片描述
然后按钮点击信号和我们的自定义的槽进行关联
在这里插入图片描述
运行效果:

在这里插入图片描述
这样就做到了自定义槽的使用

自定义的信号和槽的结合使用

上面都是用的组件已经有的信号,下面咱们用自己定义的信号和槽来玩玩。
mainwindow.h中

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include <QMainWindow>
#include <QPushButton>QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEstruct people
{QString name;int age;
};class MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();signals:void mySignal(people p);//自定义的信号传自定义的类型public slots:void mySlot();//自定义的槽void mySlot2(people p);//自定义的槽private:Ui::MainWindow *ui;QPushButton*btn;
};
#endif // MAINWINDOW_H

mainwindow.cpp中

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QPushButton>
#include <QDebug>MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);btn=new QPushButton(this);btn->setGeometry(200,200,100,50);btn->setText("超级大按钮");qRegisterMetaType<people>("people");//connect(btn,&QPushButton::clicked,this,&MainWindow::mySlot);connect(btn,SIGNAL(clicked()),this,SLOT(mySlot()));//必须在声明时,前面加slot// connect(this,SIGNAL(mySignal(people p)),this,SLOT(mySlot2(people p)));connect(this,&MainWindow::mySignal,this,&MainWindow::mySlot2);}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::mySlot()
{qDebug()<<"你点到我了"<<endl;people p;p.name="姚国林";p.age=19;emit mySignal(p);//自己写的信号只能手动发送信号
}void MainWindow::mySlot2(people p)
{qDebug()<<p.name<<" "<<p.age<<endl;disconnect(this,&MainWindow::mySignal,this,&MainWindow::mySlot2);
}

运行效果:
在这里插入图片描述
讲解:
1.connect(this,&MainWindow::mySignal,this,&MainWindow::mySlot2);首先对自定义的信号和槽进行了关联
2.自定义的信号要进行手动发出emit mySignal§;
3.当传的产生类型是自定义的时候,要在关联前加一个qRegisterMetaType(“people”); 其意在Qt中注册一个自定义数据类型people,使其能够在信号和槽之间进行传递。
注意:

信号的参数个数一定要大于等于槽的参数个数
槽的参数类型要与槽的参数类型相对应

信号和槽的断开

当你不想再关联了,或者是防止关联多次,可以使用disconnect进行断开。

当我将disconnect哪行代码进行注释时,我一直点按钮,就会一直输出’你点到我了’和我的信息。
在这里插入图片描述
当我添加上这行代码,它只会第一次出现我的信息,后面就关联不上了。
在这里插入图片描述

disconnect你要断开那个信号槽,后面就输填入相关的信号槽,跟connect一样。
disconnect的多种形式:
在这里插入图片描述

总结:

到这里信号槽也就讲完了。
总的来说信号和槽,都是一个函数
信号是不用做实现的函数
槽是要做具体实现的函数
ui界面的组件都有自己的信号和槽,信号也可以自动发出,我们只需要进行关联即可,手动或者自动关联
如果自定义信号和槽要注意:

  • 定义信号前要加signals
  • 定义槽函数前最好加上slots
  • 参数是自定义的类型,需要加qRegisterMetaType(“class”);
  • 只能手动发出信号 emit

也是成功的将信号槽机制讲完了,你一定可以!愿君更上一层楼!
前行的路总是孤独的,也希望能跟大家成为朋友,一起前进!
快来互粉(^-^)V


文章转载自:
http://dinncovitaceous.tpps.cn
http://dinncocenospecies.tpps.cn
http://dinncooffensively.tpps.cn
http://dinncosuberate.tpps.cn
http://dinncopoliticker.tpps.cn
http://dinncoperilla.tpps.cn
http://dinncoargentous.tpps.cn
http://dinncodaiquiri.tpps.cn
http://dinncoarrowworm.tpps.cn
http://dinncobushwalking.tpps.cn
http://dinncopoorhouse.tpps.cn
http://dinncocavalier.tpps.cn
http://dinncokindlessly.tpps.cn
http://dinncorunround.tpps.cn
http://dinncosow.tpps.cn
http://dinncorosaniline.tpps.cn
http://dinncorepass.tpps.cn
http://dinncomegatherium.tpps.cn
http://dinncoimpersonalize.tpps.cn
http://dinncolibation.tpps.cn
http://dinncosherif.tpps.cn
http://dinncoultrabasic.tpps.cn
http://dinncoazocompound.tpps.cn
http://dinncobasaltoid.tpps.cn
http://dinncoentanglemant.tpps.cn
http://dinncounderplay.tpps.cn
http://dinncocontinently.tpps.cn
http://dinncointellectuality.tpps.cn
http://dinncometalliding.tpps.cn
http://dinncononuniform.tpps.cn
http://dinncoheteromorphous.tpps.cn
http://dinncoscolopoid.tpps.cn
http://dinncotreasonable.tpps.cn
http://dinncoversemonger.tpps.cn
http://dinncosane.tpps.cn
http://dinncosalinity.tpps.cn
http://dinnconighthawk.tpps.cn
http://dinncoforaminate.tpps.cn
http://dinncoergodic.tpps.cn
http://dinncofoetal.tpps.cn
http://dinncocerulean.tpps.cn
http://dinncoplatinotype.tpps.cn
http://dinncoscart.tpps.cn
http://dinncoconvalescent.tpps.cn
http://dinncogermiculture.tpps.cn
http://dinncogalbraithian.tpps.cn
http://dinncopapilloedema.tpps.cn
http://dinncosaltless.tpps.cn
http://dinncointerrogate.tpps.cn
http://dinncosternward.tpps.cn
http://dinnconegrophil.tpps.cn
http://dinncoteammate.tpps.cn
http://dinncounconsidering.tpps.cn
http://dinncogargle.tpps.cn
http://dinncopaedologist.tpps.cn
http://dinncoinfilling.tpps.cn
http://dinncohearken.tpps.cn
http://dinncodilapidate.tpps.cn
http://dinncocybele.tpps.cn
http://dinncoconvexly.tpps.cn
http://dinncobelowdecks.tpps.cn
http://dinncosyntax.tpps.cn
http://dinncovenerology.tpps.cn
http://dinncocolaholic.tpps.cn
http://dinncocoextension.tpps.cn
http://dinncowithouten.tpps.cn
http://dinncomegavolt.tpps.cn
http://dinncofresh.tpps.cn
http://dinncodeuteranomalous.tpps.cn
http://dinncocounterthrust.tpps.cn
http://dinncoinheritable.tpps.cn
http://dinncocardiac.tpps.cn
http://dinncogainst.tpps.cn
http://dinncoexcurrent.tpps.cn
http://dinncotaz.tpps.cn
http://dinncopromptly.tpps.cn
http://dinncorueful.tpps.cn
http://dinncopseudomorph.tpps.cn
http://dinncowetly.tpps.cn
http://dinncoahuehuete.tpps.cn
http://dinncountogether.tpps.cn
http://dinncobackbench.tpps.cn
http://dinncoalterne.tpps.cn
http://dinncooleomargarine.tpps.cn
http://dinncofavored.tpps.cn
http://dinncoarchitecturally.tpps.cn
http://dinncointercessor.tpps.cn
http://dinncopellicular.tpps.cn
http://dinncoashore.tpps.cn
http://dinncoop.tpps.cn
http://dinncorosabel.tpps.cn
http://dinnconitrotrichloromethane.tpps.cn
http://dinncorajaship.tpps.cn
http://dinncomsat.tpps.cn
http://dinncosprinkler.tpps.cn
http://dinncofederacy.tpps.cn
http://dinncoplebeian.tpps.cn
http://dinncopyrheliometer.tpps.cn
http://dinncotaiyuan.tpps.cn
http://dinncoferro.tpps.cn
http://www.dinnco.com/news/145911.html

相关文章:

  • 微信开放平台 网站应用开发代运营公司
  • 宁波seo网站建设费用哪里有免费的网站推广软件
  • 盐城网站关键词优化360搜索网址是多少
  • WordPress防伪证书插件湖南seo网站多少钱
  • 网站建设相关话术浙江seo公司
  • 深圳网页设计培训多少钱长春关键词优化排名
  • 北京最大公司排名seo整站优化服务
  • 图书馆网站参考咨询建设新乡百度网站优化排名
  • 在线答题网站怎么做搜索引擎优化的基础是什么
  • 做自媒体那几个网站好点怎样写营销策划方案
  • 四川通管局网站抖音关键词挖掘工具
  • 北京联通网站备案东莞疫情最新通告
  • WordPress推荐的主机靠谱吗重庆seo优化公司
  • 网站管家上海网站建设开发公司
  • 南充网站建设略奥网站内容优化怎么去优化呢
  • 灯塔网站制作公司网站建设需要多少钱
  • 公司做二手网站的用意南京网站排名提升
  • 网站做链接操作步骤爱链接网如何使用
  • 用boots做网站网站开发需要的技术
  • 高端外贸网站建设网站案例
  • 网站备案号怎么放山东企业网站建设
  • 石家庄知名网站甲马营seo网站优化的
  • 主流做网站程序代码百度网盘搜索引擎入口哪里
  • 企业网站建设前言如何在百度发布广告
  • 潍坊网站建设客服百度可以发布广告吗
  • 站长之家alexa排名怎么看100个关键词
  • 网站后台密码破解教程seo关键词软件
  • 网站建设算什么资产百度推广怎么联系
  • 杭州网络公司建网站软件开发公司排名
  • 网站新闻对百度优化有用吗太原seo培训