QT笔记
学习笔记
橘子洲长
笔记记笔记
展开
-
QList原理
QList不同于std::list,QList根据容易元素类型的不同,采用不同的数据结构来处理,从而节省内存、提高效率。QList的模板参数T大概分为两种情况:(1)如果T占用的内存较多 或 T占用内存少但有构造函数QList将每个元素存放在堆上,再维护一个指针数组,指向这些元素。所以可以根据索引快速查找元素,但删除操作速度较慢。(2)如果T是一个指针类型 或 T所占字节数小于指针所占字节数QList将T直接存放在指针数组中...原创 2022-04-10 16:17:25 · 801 阅读 · 0 评论 -
Qt事件处理机制
1.Qt事件简述Qt的事件主要分为两种:操作系统产生Qt应用程序产生首先,所有的Qt事件均继承抽象类QEvent,其描述程序内部或外部发生的动作。任意的QObject对象都具备处理Qt事件的能力。在发生事件时,会产生一个QEvent对象,这个对象会传递给当前组件的event( )函数。如果当前组件没有安装事件过滤器,则会将QEvent对象发放到相应的xxxEvent( )函数中。不同的QEvent对象会有各种各样的属性,比如:鼠标按下的属性So,总体的流程如下:Qt的main() 函数原创 2022-02-20 21:25:57 · 1940 阅读 · 0 评论 -
Qt中QTimeEdit、QDateEdit、QDateTimeEdit样式表
1.1 QTimeEdit 样式表效果图:qss代码:.QTimeEdit[timeEditStyle="commom"]{ min-height:24px; max-height:24px; border-radius:2px; border:1px solid #cccccc;}.QTimeEdit[timeEditStyle="commom"]:hover,.QTimeEdit[timeEditStyle="commom"]:focus{原创 2021-07-30 22:04:24 · 7341 阅读 · 1 评论 -
Qt设置文本省略样式
void ZqyFunctionConfigWdt::setLabelElidedText(){ QString text = ui->label->text(); QFontMetrics metricsLabel(ui->label->font());//比较文本的长度和控件的长度,如果文本长度大于控件的长度 if(metricsLabel.width(text) > ui->label->width()) { //原创 2021-07-30 22:18:32 · 609 阅读 · 0 评论 -
Qt动态样式
如果想要一个控件在不同的情况下使用不同的样式,一般直接setProperty是没有效果的。需要在setProperty后再加上unpolish和polish刷新一下,顺序不能反。ui->label->setProperty("lbStyle", "red");ui->label->style()->unpolish(ui->label);//删除旧样式ui->label->style()->polish(ui->label);//设置新样式原创 2021-07-30 22:13:02 · 540 阅读 · 0 评论 -
Qt setMouseTracking函数的作用
设置窗体是否追踪鼠标this->setMouseTracking(true);//默认值为false该函数默认是不追踪的,不追踪的情况下 : 至少有一个鼠标按键按下才会响应鼠标移动事件。那么如果你在鼠标悬停的时候就想响应鼠标事件(获取鼠标位置信息等)的话,就需要将函数设为true。...原创 2021-07-24 17:05:36 · 644 阅读 · 0 评论