欢迎访问宙启技术站
智能推送

PyQt中通过qtpy.QtGuiQIcon()来设置窗口图标

发布时间:2023-12-18 14:26:44

在PyQt中,可以使用QIcon类来设置窗口的图标。QIcon可以接受各种不同类型的参数,包括文件路径、Qt内置图标、QPixmap对象等。

以下是一个简单的例子,通过QIcon设置窗口图标:

from qtpy.QtWidgets import QApplication, QMainWindow
from qtpy.QtGui import QIcon
import sys

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setWindowTitle("Window with Icon")
        self.setGeometry(100, 100, 500, 500)

        # 设置窗口图标
        icon = QIcon("icon.png")
        self.setWindowIcon(icon)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())

在上面的例子中,我们创建了一个名为MainWindow的窗口类,继承自QMainWindow。在__init__方法中,我们设置了窗口的标题和几何位置。

然后,我们创建了一个QIcon对象,指定图标的文件路径为"icon.png"。最后,我们通过调用setWindowIcon方法,将图标设置为窗口的图标。

if __name__ == "__main__"中,我们创建了一个QApplication对象,并且创建了MainWindow类的实例。最后,我们调用show方法显示窗口,并通过sys.exit(app.exec_())启动应用。

如果要使用Qt内置的图标,可以使用QIcon.fromTheme方法。以下是一个使用Qt内置图标设置窗口图标的例子:

from qtpy.QtWidgets import QApplication, QMainWindow
from qtpy.QtGui import QIcon
import sys

class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()

        self.setWindowTitle("Window with Icon")
        self.setGeometry(100, 100, 500, 500)

        # 设置窗口图标为Qt内置的信息图标
        icon = QIcon.fromTheme("dialog-information")
        self.setWindowIcon(icon)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = MainWindow()
    window.show()
    sys.exit(app.exec_())

在上面的例子中,我们使用了QIcon.fromTheme来获取Qt内置的"dialog-information"图标,并将其设置为窗口的图标。

无论是使用文件路径还是Qt内置图标,都可以通过QIcon来设置窗口的图标。