小编Gar*_*hes的帖子

在PyQt中使用QThread的后台线程

我有一个程序,通过我在PyQt中编写的gui与我正在使用的收音机连接.显然,无线电的一个主要功能是传输数据,但为了不断地这样做,我必须循环写入,这会导致gui挂起.因为我从未处理过线程,所以我试图摆脱这些挂起使用QCoreApplication.processEvents().无线电需要在传输之间休眠,所以gui仍然根据这些睡眠的持续时间而挂起.

有没有一种简单的方法可以使用QThread来解决这个问题?我已经找到了有关如何使用PyQt实现多线程的教程,但是大多数都涉及设置服务器,并且比我需要的更先进.老实说,我甚至不需要我的线程在运行时更新任何东西,我只需要启动它,让它在后台传输,然后停止它.

python multithreading pyqt pyqt4 qthread

68
推荐指数
6
解决办法
10万
查看次数

在Windows中显示文件的资源管理器属性对话框

有没有一种简单的方法可以在Windows中使用Python显示文件的属性对话框?

我正在尝试显示在资源管理器中右键单击文件时弹出的同一窗口,然后选择"属性".

python windows winapi

7
推荐指数
1
解决办法
1473
查看次数

QTableWidget整数

我试图在我的QTableWidget中插入和显示整数.它们不显示.它可以工作,如果我将所有内容转换为字符串,但我不能用数字排序列 - 只有词法(1,10,100等).这是使用PyQt.

我已经尝试了一些建议的解决方案,使用QTableWidgetItem.setData(someRole,intValue),然后在所有显示中都没有.我试过,Qt.UserRole,DisplayRole和Edit Role.(我不明白为什么需要这些角色来显示整数,但只是按照例子).我的具体代码是:

    item = QTableWidgetItem()
    item.setData = (Qt.DisplayRole,intValue)
    myTable.setItem(row, column, item)
Run Code Online (Sandbox Code Playgroud)

以下代码有效,但仅适用于字符串:

    item = QTableWidgetItem(str(intValue))
    myTable.setItem(row, column, item)
Run Code Online (Sandbox Code Playgroud)

此外,回读数据的建议,只显示对象位置,而不是实际数据.例如,使用Eric作为解释器shell:

item.data(Qt.DisplayRole)

响应:PyQt4.QtCore.QVariant对象位于0x1f01fa60

或这个:

item.data(Qt.EditRole).数据()

响应:sip.voidptr对象位于0x1e904a80

任何见解都表示赞赏.

python integer pyqt qtablewidgetitem

4
推荐指数
1
解决办法
6548
查看次数

用户调整PyQt小部件的大小

我对PyQt和Python很新,所以希望这个问题有意义.

我有一个QTreeView,QListView和QTextEdit以类似列的形式彼此相邻设置.作为用户,我想说我想改变其中一列的宽度.我该如何实现这一目标?如果您是Maya的用户,想象一下paneLayout,这就是我想要实现的目标.

例:

[1][2][3]
[   1  ][2][3]
[1][   2   ][ 3 ]
Run Code Online (Sandbox Code Playgroud)

......而不仅仅是调整整个窗口的大小.我希望这是有道理的...!

感谢任何能提供帮助的人!

python pyqt

2
推荐指数
1
解决办法
4348
查看次数