12345678910111213141516171819202122 |
- from qtpy import QtCore
- from qtpy import QtGui
- from qtpy import QtWidgets
- class ZoomWidget(QtWidgets.QSpinBox):
- def __init__(self, value=100):
- super(ZoomWidget, self).__init__()
- self.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons)
- self.setRange(1, 500)
- self.setSuffix(' %')
- self.setValue(value)
- self.setToolTip('Zoom Level')
- self.setStatusTip(self.toolTip())
- self.setAlignment(QtCore.Qt.AlignCenter)
- def minimumSizeHint(self):
- height = super(ZoomWidget, self).minimumSizeHint().height()
- fm = QtGui.QFontMetrics(self.font())
- width = fm.width(str(self.maximum()))
- return QtCore.QSize(width, height)
|