QT相关基础

QT继承关系图 

setWindowTitle()修改窗口标题
setparent() 设置父对象
setFixedSize()设置窗口的固定大小
QObjectList&list=p->children();  list存放p的子对象列表  
menubar()创建菜单栏   获取菜单栏 如果当前窗口没有菜单栏那么就会自动创建一个 
addmenu()向菜单中添加选项  
addtoolbar()  创建工具栏  工具栏可以有多个
statebar()工具栏
QdockWidget()停靠部件 可以有多个
setCentralWidget()添加核心部件 核心部件只可以有一个
textEdiet() 文本编辑框
QLabel() 文本  可以显示图片或者动态图    pixmap属性里设置静态图片 
QMovie  *movie =new QMovie(“路径”,byte,父指针)   
setmovie(参数为Qmovie *) 然后 movie->start(); 播放动态图
emit->函数    发射信号
LineEdit   单行输入框  

QT中new的对象有时候不需要delete 
QT自动释放机制:1.该对象是QObject的派生类     2.该对象的父类不为NULL
该对象的父类删除时,该对象会被自动删除,无需手动释放。父对象有一个children()列表

信号与槽机制:
信号只需要声明函数即可,无需实现  
槽必须同时声明加实现

如果信号函数重载或者槽函数重载  connect应该怎么写:
1.使用函数指针进行赋值
2.使用static_case进行强制类型转换

一个信号可以连接多个槽,当信号发出的时候,槽的调用顺序是随机的,和声明顺序无关
一个槽也可以连接多个信号  

connect(信号发送者,信号,信号接受者,槽) 信号发送者和接收者通常是类名  QT5以后
connect(信号发送者,SIGNAL(函数原型),信号接收者,SLOT(函数原型))   QT4之前
这里的SIGNAL()和SLOT()是宏 本质上是将函数原型转换成字符串
connect中使用lambda表达式  使用lambda表达式时就没有信号接收者 
如果发送者和接收者是一个类就可以省略接收者 

disconnect 取消连接  语法和connect一致   以下三种情况必须用disconnect:
1.断开与某个对象想关联的任何对象     disconnect(myobject,0,0,0)或  myobject->disconnect()
2.断开与某个特定信号的任何关联   disconnect(myobject,SIGNAL(mysignal()),0,0) 或者  myobject->disconnect(SIGNAL(mysignal());
3.断开两个对象之间的关联     disconnect(myobject,0,myreceiver,0)或者 myobject->disconnect(myreceiver)  
在 disconnect 函数中 0 可以用作一个通配符,分别表示任何信号、任何接收对象、接收对象中的任何槽函数。但是发射者 sender 不能为 0,其它三个参数的值可以等于 0

qDebug()<<""   默认将Qstring字符转义输出  解决方法:
1.将Qstring转换为char *
2.使用qDebug().noquote()<<   

ListWidget 使用:

    QStringList list;
    list<<"第一行"<<"第二行"<<"第三行";
    ui->listWidget->addItems(list);

treeWidget使用: 通过UI控制更简单

tableWidget使用: 

自定义控件:

 新建文件 ->QT->QT设计师界面类  
 然后在ui界面中放置一个父类,将父类提升至自己设置的类里  
建立自定义控件关系:
关联一个QSlider和QSpinBox 

 connect(ui->spinBox,
         static_cast<void(QSpinBox::*)(int)>(&QSpinBox::valueChanged),
         ui->horizontalSlider,
         &QSlider::setValue);  //函数二义性的解决
 connect(ui->horizontalSlider,
         &QSlider::valueChanged,
         [=](int value){
         ui->spinBox->setValue(value);//使用lambda表达式

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Qt基础教程v2.0.pdf是一本学习Qt编程框架的重要教材。通过书中的学习内容,读者可以对Qt的基本概念、应用程序的开发和调试等有一个详细的了解。此教程不仅适用于初学者,也适用于那些想要深入了解Qt编程的开发者。 在书中,作者首先详细介绍了Qt框架的架构和基本概念,包括Widget、Layout、Signal与Slot等。然后,读者将学习如何使用Qt的集成开发环境Qt Creator来创建和调试Qt应用程序。此外,作者还介绍了如何设置Qt项目运行时的环境变量和选项,以满足不同的开发需求。 在学习完基础概念之后,读者将开始学习如何创建Qt程序。这涵盖了Qt界面设计和应用程序编写,包括Dialog、PushButton、LineEdit、SpinBox等常见的Qt UI控件的使用。此外,作者还介绍了如何使用Qt的文件操作、数据存储和打印等功能。 最后,本书还介绍了一些高级编程方面的内容,如Qt多线程、网络编程和插件编程等。这些内容充分发挥了Qt框架的优势,帮助读者解决实际开发中的问题。 总之,Qt基础教程v2.0.pdf是一本非常实用的教材,它可以帮助读者深入学习Qt编程框架,掌握Qt开发所需的基础知识和技能。 ### 回答2: 《Qt基础教程v2.0.pdf》是一本非常实用的Qt入门教材,它可以帮助初学者快速掌握Qt编程的基础知识。本教程由QT开发Qt中文网发布,它详细讲解了Qt框架的各个方面,包括界面设计、信号槽机制、文件操作、网络编程等,而且语言生动易懂。本书分为18个章节,每一章节都有具体的实例案例,让新手不仅能够理解Qt编程的理论知识,还可以通过实践掌握开发技能。 《Qt基础教程v2.0.pdf》从Qt的安装、开发环境搭建到编程的基本语法都进行了详细介绍,注重实践和应用,既有实例代码也有详细的解释。通过这本书,读者可以学习到如何创建Qt应用程序、设计界面、编写信号槽、使用Qt的核心类等。同时,该书讲解的内容还包括了如何跨平台进行开发,如何运用多线程编程等等。 《Qt基础教程v2.0.pdf》的特点在于,它不仅仅讲解了Qt的核心知识,而且还提供了很多实用案例,读者可以根据这些案例加深理解,廓清疑惑,对Qt编程也能更加熟练自如。此外,本书不仅适用于初学者,对于已经掌握了基础Qt开发人员也具有一定的参考价值。 总之,《Qt基础教程v2.0.pdf》是一本非常优秀的Qt编程入门教程,它通过生动的语言、实用的案例,帮助读者掌握了Qt编程的核心技能。无论是从事Qt开发的初学者还是已经在Qt界面编程领域中有一定经验的开发者都可以从本书中受益。 ### 回答3: 《QT基础教程v2.0.pdf》是一本介绍QT编程的教材,适用于想要学习QT编程的初学者。这本教材包含的内容非常丰富,主要包括QT编程的基础知识、QT图形用户界面的设计与实现、QT网络编程、QT数据库编程、QT进程间通信和多线程编程等方面。 这本教材比较系统地介绍了QT编程的基础知识,包括信号和槽、布局管理器、控件、事件等等。通过这些基础知识的学习,读者能够掌握QT编程的基本方法和技能。另外,这本教材还介绍了QT的UI设计方法和技巧,包括对话框设计、菜单设计、工具栏设计等方面。读者可以通过学习这些内容,掌握如何设计出用户友好的界面。 在网络编程方面,这本教材介绍了QT如何进行网络通信,包括TCP和UDP。读者可以学习如何使用QT进行网络编程,掌握QT网络编程的基本原理和技巧。在数据库编程方面,这本教材还介绍了如何使用QT连接和操作数据库,帮助读者学习QT数据库编程的相关内容。 此外,这本教材还介绍了QT多线程编程和进程间通信,使读者能够了解QT在并发编程和进程间通信方面的应用。综上所述,《QT基础教程v2.0.pdf》是一本非常实用的QT编程教材,适用于想要学习QT编程的初学者或想深入学习QT编程的专业人士。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值