zoomWidget.py 712 B

12345678910111213141516171819202122
  1. from qtpy import QtCore
  2. from qtpy import QtGui
  3. from qtpy import QtWidgets
  4. class ZoomWidget(QtWidgets.QSpinBox):
  5. def __init__(self, value=100):
  6. super(ZoomWidget, self).__init__()
  7. self.setButtonSymbols(QtWidgets.QAbstractSpinBox.NoButtons)
  8. self.setRange(1, 500)
  9. self.setSuffix(' %')
  10. self.setValue(value)
  11. self.setToolTip('Zoom Level')
  12. self.setStatusTip(self.toolTip())
  13. self.setAlignment(QtCore.Qt.AlignCenter)
  14. def minimumSizeHint(self):
  15. height = super(ZoomWidget, self).minimumSizeHint().height()
  16. fm = QtGui.QFontMetrics(self.font())
  17. width = fm.width(str(self.maximum()))
  18. return QtCore.QSize(width, height)