Fraction Slider.py的qt4代码修改后的qt5版本
import platform
import PyQt5
from PyQt5.QtCore import QPointF,QRectF,QSize,Qt,QObject,pyqtSignal
from PyQt5.QtGui import QColor,QFont,QFontMetricsF,QPainter,QPalette,QPolygonF,QKeyEvent
from PyQt5.QtWidgets import (QApplication,QDialog,QGridLayout,QLCDNumber,
QLabel,QSizePolicy,QSpinBox,QWidget)
X11=hasattr(PyQt5.QtGui,"qt_x11_wait_for_window_manager")
X11 = True
try:
from PyQt5.QtGui import qt_x11_wait_for_window_manager
except ImportError:
X11 = False
class FractionSlider(QWidget):
XMARGIN=12
YMARGIN=9
WSTRING='999'
valueChanged=pyqtSignal(int)
def __init__(self,numerator=0,denominator=10,parent=None):
super(FractionSlider,self).__init__(parent)
self.__numerator=numerator
self.__denominator=denominator
self.setFocusPolicy(Qt.WheelFocus)
self.setSizePolicy(QSizePolicy(QSizePolicy.MinimumExpanding,QSizePolicy.Fixed))
def decimal(self):
return self.__numerator/float(self.__denominator)
def fraction(self):
return self.__numerator,self.__denominator
def sizeHint