您当前的位置: 首页 >  c++

*DDL_GzmBlog

暂无认证

  • 1浏览

    0关注

    605博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

[C++ 小学期] QT 第一课

*DDL_GzmBlog 发布时间:2021-06-15 22:22:17 ,浏览量:1

目录
  • QT设计器
    • 总结
  • 框架
  • 一些组件的使用
    • 窗口(Widget)
    • button
  • 标准信号和槽(QT核心)
    • 信号:
    • close
    • Boss样例
    • 自定义槽(普通函数的用法)

QT设计器

手工敲代码,效率极低 所以微软就开发了一个 RAD设计模式 因此我们可以由环境进行生成

设计器可以解决很多简单的问题(就是一些普通的工具)

总结
  • 创建工程并运行

  • 理解工程文件结构(pro,h,cpp,ui), 程序入口: main

  • 控制台

  • 空项目 -> UI程序

框架
int main(int argc, char *argv[])
{ 
	// 应用程序类对象 有且只有一个
    QApplication a(argc, argv);
    
    //保持窗口不变
    return a.exec();
}
一些组件的使用 窗口(Widget)

MyWidget name name.setWindowTitle(内容) 设置窗口标题

button

定义 QPushButton b1(&对象) setText() 设置按钮内容 setParent() 设置按钮父类 name.move(x,y) 移动到

Q: 因为我们如果要定义100个Button不可能在主函数写100个 所以我们需要在 头文件里写(不能在cpp里写哦)

指针类型记得开辟this的空间

b2 =  new QPushButton(this);
b2->setText(":_:");
b2->move(200,200);
标准信号和槽(QT核心)

让按钮有反应才行

信号:

软件模拟的中断

close

我这里定义的是指针 所以没有&

  • 信号发出者

  • &发送者的类名::信号名字

  • 信号接收者

  • &接受的类型::槽函数名字

connect(b2,&QPushButton::pressed,this,&MyWidget::close);
Boss样例
  • 如果需要通过子类 来 调控父类 需要用到信号
  • 信号必须有signals 信号就是函数的声明
槽 自定义槽(普通函数的用法)

QT5: 任意的成员函数,普通全局函数,静态函数

槽函数需要和信号一致(参数,返回值)

由于信号都是没有返回值,所以槽函数一定没有返回值

  • 两个的 接收者 不同
  • 可以自定义函数
  • hide是隐藏
connect(&b1,&QPushButton::released,this,&MyWidget::mySlot);
connect(&b1,&QPushButton::released,b2,&QPushButton::hide);
void MyWidget::mySlot()
{
    b1.setText("123");
}
关注
打赏
1657615554
查看更多评论
立即登录/注册

微信扫码登录

0.0366s