导图社区 Qt
这是一篇关于Qt的思维导图,Qt是什么?Qt的核心机制,基本控件和相对应的函数。希望对各位小伙伴有帮助哦~
社区模板帮助中心,点此进入>>
论语孔子简单思维导图
《傅雷家书》思维导图
《童年》读书笔记
《茶馆》思维导图
《朝花夕拾》篇目思维导图
《昆虫记》思维导图
《安徒生童话》思维导图
《鲁滨逊漂流记》读书笔记
《这样读书就够了》读书笔记
妈妈必读:一张0-1岁孩子认知发展的精确时间表
day1
Qt是什么
概念:跨平台的C++图形界面的应用程序的开发框架
特性:跨平台、C++编程语言、含有丰富的API(有250个以上的类)
应用:车载系统、KTV点歌系统、咪咕音乐、安防监控系统、智能手环、播放器、WPS等
学什么:学习Qt内部提供的类以及框架,开发各种各样的应用程序
3大护法
QApplication:控制程序执行流程,要使用GUI,必须创建QApplication的对象,让程序进入一个事件循环机制中
QWidget:用来绘制界面
QLayout:布局管理,设置界面中组件的摆放位置的(绝对布局、相对布局)
打印追踪
QDebug:#include <QDebug> qDebug()<<"hello word"
Qt的核心机制
前提:需要一个按钮、一个文本框(点击按钮,修改文本框中的内容)
作用:实现对象与对象之间的通信
核心机制:
信号:(SIGNALS)有系统提供的信号,还可以自己定义信号
槽函数:(槽SLOTS)用来处理业务,由系统提供的,也有自己定义的
按钮和文本框进行通信:点击按钮,会产生信号,整个窗口或者是文本框接收这个信号,然后调用相对应的槽函数去执行业务
信号和槽的关联:connect(信号的发送者,发送什么信号,信号的接收者,槽函数)
信号和槽关联的注意事项:
哪些对象要进行通信?
看信号的发送者有哪些信号,选择合适的信号去使用
信号什么时候都有可能产生,如果信号产生要去处理业务,必须与槽函数进行一个绑定
何时去调用槽函数:信号和槽函数绑定,只要产生了信号,对应的槽函数就会被自动调用
信号的接收者到底应该是谁?
槽函数在哪个类里面定义的,信号的接收者就是谁的对象
信号的发送者和接收者,必须是类对象的地址
只要在类中要使用到信号和槽机制
1、必须保证此类有继承QObject类,因为QObject类是qt中类的祖先,他里面提供了信号和槽的机制
2、Q_OBJECT这个宏必须要加,因为在编译的时候是根据这个宏展开使用信号和槽机制
3、一定要有connect关联
4、槽函数是否存在
5、工程重新构建
基本控件和相对应的函数
QMessageBox(消息提示框)
information:表示该消息的提示
warning:表示该消息出现了某个警告
question:表示该消息正在询问某个问题
QDebug(打印)
qDebug() << "Date:" << QDate::currentDate(); 打印错误信息
qDebug() << "Types:" << QString("String") << QChar('x') << QRect(0, 10, 50, 40); 打印字符串中某个字符的位置
qDebug() << "Custom coordinate type:" << coordinate;打印自定义坐标
QLabel(标签类)
void setText(const QString &)
void setMovie(QMovie *movie)
void setNum(int num)
void setNum(double num)
void setPicture(const QPicture &picture)
void setPixmap(const QPixmap &)
void clear()
QLineEdit(编辑框类)
void setCursorPosition(int) void setDragEnabled(bool b) void setEchoMode(EchoMode) void setFrame(bool) void setInputMask(const QString &inputMask) void setMaxLength(int) void setModified(bool) void setPlaceholderText(const QString &)
QPushButton(按钮)
setText、clicked()
QTextBrowser(文本浏览)
setText
QTextEdit(多行文本框)
QComboBox(下拉框)
下拉框,可以有多个选项,例如:计算器中的运算符,星期/月份的选择
QString(类型转换)
QString转数值类型
tolnt原型(int QString::toInt(bool *ok = Q_NULLPTR, int base = 10) const)
数值类型转成QString
QString::number(数值)