qq_45043457 2023-01-18 19:51 采纳率: 33.3%
浏览 32
已结题

QListWidgetItem显示不全时点击QListWidgetItem导致滑动条滑动问题

QListWidget设置QAbstractItemView::ScrollPerPixel后,当QListWidgetItem显示不全时点击QListWidgetItem导致滑动条滑动问题

img

img

上图是点击前,下图是点击后,有什么办法可以让点击后滑动条不滑动么。

  • 写回答

1条回答 默认 最新

  • 快撑死的鱼 2023-01-18 23:15
    关注

    回答不易,求求您采纳点赞哦

    QListWidget 和 QListWidgetItem 遇到的问题可能是由于 QAbstractItemView::ScrollPerPixel 属性设置为 true 引起的。此属性启用基于像素的滚动,如果项目未完全显示,则单击该项目时可能会导致滑块滑动。

    为了防止点击部分显示的QListWidgetItem后滑块滑动,可以尝试以下解决方案:

    • 将 QAbstractItemView::ScrollPerPixel 属性设置为 false。这将禁用基于像素的滚动并可能阻止滑块滑动。

    • 覆盖 QListWidget 的 mousePressEvent 方法并检查单击的项目是否部分可见,如果部分可见,请使用 scrollToItem 方法将项目滚动到视图中,然后再发出单击信号。

    • 使用 QAbstractItemView 子类并覆盖 scrollTo 方法,这将防止在项目部分可见时发生滚动。

    • 您还可以使用 QListView 而不是 QListWidget,并将“移动”属性设置为“静态”

    值得注意的是,该问题也可能是由其他因素引起的,例如如果项目在屏幕上不完全可见,则可能会导致单击时滚动。

    测试上述建议并查看哪一个最适合您的特定用例非常重要,因为解决方案将取决于您的应用程序的具体实现。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 2月5日
  • 已采纳回答 1月28日
  • 创建了问题 1月18日

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog