在PyQt4中自定义WM_NAME和WM_CLASS(如xprop所示)

2024-04-29 11:45:43 发布

您现在位置:Python中文网/ 问答频道 /正文

如何自定义PyQt4程序的字符串WM_NAME和{},如xprop所示?在

例如:

from PyQt4 import QtGui, QtCore
import sys

if __name__ == '__main__':

    app = QtGui.QApplication(sys.argv)
    app.setStyle("plastique")


    listView = QtGui.QListView()    
    listView.show()

    combobox = QtGui.QComboBox()
    combobox.show()    

    sys.exit(app.exec_())

如果我通过python xprop_test.py运行这个文件(文件名为xprop_test.py),并为ListView或ComboBox调用linux工具xprop,它将显示

^{pr2}$

以及

WM_CLASS(STRING) = "xprop_test.py", "Xprop_test.py"

如何将字符串WM_NAMEWM_CLASS设置为另一个自定义值(与文件名不同)?在

整个程序怎么设置?如何为每个单独的GUI元素调整它?在


Tags: 字符串namepytestimport程序appshow
1条回答
网友
1楼 · 发布于 2024-04-29 11:45:43

WM_NAME字符串只是标题栏标题,可以这样设置:

listView.setWindowTitle('listview')

给予:

^{pr2}$

WM_CLASS更难影响。默认情况下,它是从argv[0]构造的,而且似乎没有一种方法可以使用qtapi以编程方式更改这一点。但是,字符串的第一部分可以通过使用如下-name选项运行程序来更改:

python xprop_test.py -name FooBar

给予:

WM_CLASS(STRING) = "FooBar", "Xprop_test.py"

相关问题 更多 >