![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Qt
文章平均质量分 66
brahmsjiang
这个作者很懒,什么都没留下…
展开
-
QML的ListView在动态删除Item时无法更新spacing
一旦model的数据被准备好,比如model有8项那么ListView就会加载8个delegate,与之对应的spacing就会有7个。如果这时在qml侧做手脚,进行一定的过滤如删除4个delegate,妄图满足某些条件就返回一个无效的delegate,达到只加载4个delegate的效果。这也许是Qt不够智能的原生问题,不管我在现在code里面是让loader返回undefined还是null,抑或是让delegate如text的高度为0,visible为false都无法解决上述问题。原创 2024-05-21 17:11:58 · 401 阅读 · 0 评论 -
不要乱用Qml属性implicitWidth与implicitHeight
implicitWidth/Height一般用在可重用控件,它也不是必要的,QtQuick可以没有者两个属性,只因为了方便而存在。它提供了项目的自然大小的提示,但没有强制执行此大小。如果没有设置width/height系统就会默认使用implicitWidth/Height。这里要注意,如果设置的implicitWidth/Height大于设置的width/height,那么会优先启用implicitWidth/Height。width/height控件属性则为控件的宽度和高度。原创 2024-03-20 12:20:34 · 273 阅读 · 0 评论 -
QML MouseArea堆叠时传递组合事件
我们知道mouseX和mouseY是在此MouseArea内部的相对坐标,一个mouseArea使用固然没有问题,但是我发现一旦above传递给beneath后,above接收到的mouseX/Y正确无误但是beneath的mouseX/Y是不对的(假如我们对坐标感兴趣的话)!2方MouseArea各自接受自己的,互不影响。一旦above在onPressed设置mouse.accepted = false,beneath固然能收到pressed和released,但是above只能收到pressed了。原创 2023-07-13 18:54:24 · 403 阅读 · 0 评论 -
QML Text属性width、implicitWidth、contentWidth更新时序
对于动态内容Text, width被getHgWidth绑定, 故function一定先调用, 不论implicitWidth和contentWidth是否为0. 一旦有text动态更新,先变化的属性是implicitWidth, 这将trigger function再次调用,这将导致width更新, 而最后更新的是contentWidth.说句题外话,我之前getHgWidth想用Text A和Text B的visible属性来作为function参数来更新witdh,但发现虽然每次。原创 2023-03-16 15:52:21 · 945 阅读 · 0 评论 -
嵌入式Linux为Qt定制keymap
而嵌入式平台按键有限且要自行指定keycode,这时不再使用上述keymapDefault的缺省实现.比如将输入设备gpiokeys实现为驱动/dev/input/event1(假如他的F8keycode是82,非66),那么如何让Qt使用/dev/input/event1并使用新的keycode--Key_F8映射关系呢?...原创 2022-07-25 22:46:28 · 662 阅读 · 1 评论