簡體   English   中英

如何使用 PyQt5 設置窗口圖標?

[英]How to set a window icon with PyQt5?

from PyQt5 import QtWidgets, QtGui
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *

class Application(QMainWindow):
    def __init__(self):
        super(Application, self).__init__()
        self.setWindowIcon(QtGui.QIcon('icon.png'))

我正在嘗試設置一個窗口圖標(窗口的左上角),但普通圖標卻消失了。

我嘗試了許多圖標分辨率(8x8、16x16、32x32、64x64)和擴展名(.png 和 .ico)。

我究竟做錯了什么?

按照提問者的建議,該命令對我有用:

 self.setWindowIcon(QtGui.QIcon('icon.png'))

我放了 256x256 png,一切正常。 我有 Win 7 pro 64 位,Python 3.5.2 32 位。

答案已由提問者給出(隱形圖標)。 我想補充一點,腳本可能不會在腳本目錄中執行。 在任何情況下,為了安全起見,您可能需要確保圖標是相對於腳本所在的目錄加載的:

import os 
# [...]
scriptDir = os.path.dirname(os.path.realpath(__file__))
self.setWindowIcon(QtGui.QIcon(scriptDir + os.path.sep + 'logo.png'))

我正在使用 PyQT5。 代碼應該是...

icon = QtGui.QIcon()
icon.addPixmap(QtGui.QPixmap("programmer.png"), QtGui.QIcon.Selected, QtGui.QIcon.On)
MainWindow.setWindowIcon(icon)
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon


class Example(QWidget):

    def __init__(self):
        super().__init__()

        self.initUI()


    def initUI(self):

        self.setGeometry(300, 300, 300, 220)
        self.setWindowTitle('Icon')
        self.setWindowIcon(QIcon('web.png'))        

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM