【问题标题】:How to change PyQtGraph context menu font size?如何更改 PyQtGraph 上下文菜单字体大小?
【发布时间】:2019-11-07 21:16:29
【问题描述】:

每当您右键单击 PyQtGraph 中的绘图时,我都会尝试更改菜单的字体大小。当我使用setStyleSheet 更改整个应用程序的字体大小时,它也会更改菜单的字体大小。

之前

之后

我不想单独更改按钮的字体大小,因为我在 GUI 中有许多其他小部件,所以我更改了 app 字体大小。但它也改变了绘图菜单的字体大小。如何使菜单的字体大小变小?要么将字体大小更改得更小,要么以某种方式使菜单变大,这样单词就不会被截断。

from pyqtgraph.Qt import QtGui, QtCore
import numpy as np
import pyqtgraph as pg
import sys

if __name__ == '__main__':

    app = QtGui.QApplication([])

    main_window = QtGui.QMainWindow()

    widget = QtGui.QWidget()
    main_layout = QtGui.QVBoxLayout()
    widget.setLayout(main_layout)
    main_window.setCentralWidget(widget)

    button = QtGui.QPushButton('hello')

    plot_widget = pg.PlotWidget()
    plot = plot_widget.plot()

    layout = QtGui.QHBoxLayout()
    layout.addWidget(button)
    layout.addWidget(plot_widget)

    main_layout.addLayout(layout)
    main_window.show()

    app.setStyleSheet('QWidget {font-size: 30px}')

    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
        QtGui.QApplication.instance().exec_()

【问题讨论】:

    标签: python pyqt pyqtgraph qtstylesheets


    【解决方案1】:

    考虑到您提供的 MWE (1),解决方案是在 QSS 中创建另一个规则来设置 QMenu 及其子小部件的字体:

    app.setStyleSheet("""
        QWidget {font-size: 30px}
        QMenu {font-size: 15px}
        QMenu QWidget {font-size: 15px}
    """)
    

    (1) 对于更复杂的小部件,我的解决方案可以修改其他部分,因此没有通用的解决方案,但它取决于小部件本身。

    【讨论】:

      猜你喜欢
      • 2022-11-10
      • 2017-11-30
      • 2016-11-09
      • 1970-01-01
      • 2014-07-13
      • 1970-01-01
      • 2015-11-04
      • 2018-01-12
      • 1970-01-01
      相关资源
      最近更新 更多