我想做一个ListWidget,放置一些ListWidgetItem为ip地址和端口号,然后点击一个按键去开始检查每个item的地址能否连接。

在检查的同时,给能连接的Item的字体颜色设为绿色,将不能连接的设红色。

但是这一系列的操作都是封在一个槽函数当中的,导致点击的结果是等待一段时间,然后整个ListWidget的颜色一起发生变化。

而不是随着检查一点一点动态的发生变化。

这是因为ListWidget当中元素的颜色虽然被一直改变,但是知道槽函数结束才回更新ui。

=========================================================================================

我的方法是在每次更新颜色的时候都Call

ui -> activeUnitWidget -> repaint ();

也就是repaint()一下Widget来让使用者看到检查到了哪一个地址。

但是我的软件还是有些问题就是这个函数好像经常被跳过,就是两次里只有一次repaint的了的感觉,暂时还不清楚是为什么。

好像还有update这个函数也可以使用,但是我试了下不懂怎么用。

问题:我想做一个ListWidget,放置一些ListWidgetItem为ip地址和端口号,然后点击一个按键去开始检查每个item的地址能否连接。在检查的同时,给能连接的Item的字体颜色设为绿色,将不能连接的设红色。但是这一系列的操作都是封在一个槽函数当中的,导致点击的结果是等待一段时间,然后整个ListWidget的颜色一起发生变化。而不是随着检查一点一点动态的发生变化。
在python2和PySide2环境下可以直接运行(除了resource是资源文件(不提供),只是加载了一个图标给Item对象) VerticalWheelThread只是在滚动滚轮的时候用了一个 Qt hread实现滚动动画效果 List Widget 对象在初始化的时候重新指定滑块为自定义的滑块对象ScrollBar ScrollBar的valueChanged信号更新max_page从而使 List Widget 实现 动态 添加Item #!/usr/bin/env python27 # -*- coding: ut
Q List Widget Item *ite = new Q List Widget Item; ite->setText(QString::fromLocal8Bit("杭州")); ui. list Widge