Exemplo n.º 1
0
    def initUI(self):
        self.setGeometry(300, 300, 700, 700)
        self.setWindowTitle('Mouse Tracker')
        self.label = QLabel(self)
        self.label.resize(200, 40)
        self.label.move(100, 40)
        self.setMouseTracking(True)

        self.laabel = QLabel(self)
        self.laabel.resize(200, 40)
        self.laabel.move(200, 300)

        self.laabel1 = QLabel(self)
        self.laabel1.resize(200, 40)
        self.laabel1.move(300, 100)

        self.dial1 = QDial(self)
        self.dial1.move(X1, Y1)
        self.dial1.resize(100, 100)
        self.dial1.setWrapping(True)
        self.dial1.setMinimum(0)
        self.dial1.setMaximum(360)

        self.dial2 = QDial(self)
        self.dial2.move(X2, Y2)
        self.dial2.resize(100, 100)
        self.dial2.setWrapping(True)
        self.dial2.setMinimum(0)
        self.dial2.setMaximum(360)

        self.show()
Exemplo n.º 2
0
    def createControl(self):

        self.cameraHBox = QHBoxLayout()
        self.joy1Layout = QVBoxLayout()
        self.joy1Label = QFormLayout()
        self.joy1Line = QLineEdit('0')
        self.joy1Line.setMaximumWidth(50)
        self.joy1Label.addRow("Horizontal angle", self.joy1Line)
        self.joystick1 = QDial()
        self.joystick1.setMinimumHeight(200)
        self.joystick1.setMinimumWidth(200)
        self.joy1Layout.addStretch(1)
        self.joy1Layout.addLayout(self.joy1Label)
        self.joy1Layout.addWidget(self.joystick1)
        self.joy1Layout.addStretch(1)

        self.joy2Layout = QVBoxLayout()
        self.joy2Label = QFormLayout()
        self.joy2Line = QLineEdit('0')
        self.joy2Line.setMaximumWidth(50)
        self.joy2Label.addRow("Vertical angle", self.joy2Line)
        self.joystick2 = QDial()
        self.joystick2.setMinimumHeight(200)
        self.joystick2.setMinimumWidth(200)
        self.joy2Layout.addStretch(1)
        self.joy2Layout.addLayout(self.joy2Label)
        self.joy2Layout.addWidget(self.joystick2)
        self.joy2Layout.addStretch(1)

        self.cameraHBox.addLayout(self.joy1Layout)
        self.cameraHBox.addLayout(self.joy2Layout)
        self.mainWidgetLayout.addLayout(self.cameraHBox)
Exemplo n.º 3
0
    def initUI(self):
        self.dial = QDial(self)
        self.dial.move(30, 20)

        self.dial2 = QDial(self)
        self.dial2.move(200, 20)
        self.dial2.setRange(0, 50)
        self.dial2.setNotchesVisible(True)

        self.label1 = QLabel('다이얼 1값', self)
        self.label1.move(40, 130)
        self.label2 = QLabel('다이얼 2값', self)
        self.label2.move(210, 130)

        btn = QPushButton('기본값으로 되돌리기', self)
        btn.move(150, 200)

        self.dial.valueChanged.connect(self.chageValue)
        self.dial2.valueChanged.connect(self.chageValue)

        btn.clicked.connect(self.btn_clicked)

        self.setGeometry(300, 300, 500, 400)
        self.setWindowTitle('QDial')
        self.show()
    def createControlWidget(self):
        control_group_box = QGroupBox("Speed")

        self.speed_dial = QDial(self.cmdGroupBox)
        self.speed_dial.setRange(-100, 100)
        self.speed_dial.setValue(0)
        self.speed_dial.setNotchesVisible(True)
        self.speed_dial.setTracking(False)
        self.speed_dial.valueChanged.connect(self.speed_changed)

        self.speed_stop_button = QPushButton("Stop")
        self.speed_stop_button.released.connect(self.speed_stop)

        layout = QGridLayout()
        layout.addWidget(self.speed_dial, 1, 1)
        layout.addWidget(self.speed_stop_button, 3, 1)

        control_group_box.setLayout(layout)

        self.cmd_layout.addWidget(control_group_box, 1, 1)

        control_group_box = QGroupBox("Steering")

        self.steering_dial = QDial(self.cmdGroupBox)
        self.steering_dial.setRange(-100, 100)
        self.steering_dial.setValue(0)
        self.steering_dial.setNotchesVisible(True)
        self.steering_dial.setTracking(False)
        self.steering_dial.valueChanged.connect(self.steering_changed)

        self.steering_stop_button = QPushButton("Stop")
        self.steering_stop_button.released.connect(self.steering_stop)

        layout = QGridLayout()
        layout.addWidget(self.steering_dial, 1, 1)
        layout.addWidget(self.steering_stop_button, 3, 1)

        control_group_box.setLayout(layout)

        self.cmd_layout.addWidget(control_group_box, 1, 2)

        self.arm_button = QPushButton("Arm")
        self.arm_button.released.connect(self.set_arm_mode)

        self.manual_button = QPushButton("Manual")
        self.manual_button.released.connect(self.set_manual_mode)

        self.cmd_layout.addWidget(self.arm_button, 1, 3)
        self.cmd_layout.addWidget(self.manual_button, 2, 3)
    def __init__(self):
        super().__init__()
        self.title = "PyQt5 Dial"
        self.left = 500
        self.top = 200
        self.width = 300
        self.height = 250
        self.iconName = "icon.png"

        self.setWindowIcon(QtGui.QIcon(self.iconName))
        self.setWindowTitle(self.title)
        self.setGeometry(self.left, self.top, self.width, self.height)
        vbox = QVBoxLayout()

        self.dial = QDial()
        self.dial.setMinimum(0)
        self.dial.setMaximum(100)
        self.dial.setValue(30)
        self.dial.valueChanged.connect(self.dial_changed)
        vbox.addWidget(self.dial)

        self.label = QLabel()
        self.label.setAlignment(Qt.AlignCenter)
        self.label.setFont(QtGui.QFont('Sanserif', 14))
        vbox.addWidget(self.label)

        self.setLayout(vbox)
        self.show()
Exemplo n.º 6
0
    def initUI(self):
        # lcd, dial, btn 2개
        lcd = QLCDNumber(self)
        dial = QDial(self)
        btn1 = QPushButton('Big', self); btn2 = QPushButton('Small', self)

        # 가로 layout
        hbox = QHBoxLayout()
        hbox.addWidget(btn1); hbox.addWidget(btn2)

        # 세로 Laout -> lcd, dial, hbox(button 2개) 순서
        vbox = QVBoxLayout()
        vbox.addWidget(lcd)
        vbox.addWidget(dial)
        vbox.addLayout(hbox)
        self.setLayout(vbox)

        # lcd display 값이 바뀔때마다
        dial.valueChanged.connect(lcd.display)

        # 버튼 눌릴때마다
        btn1.clicked.connect(self.resizeBig) # 전체 widget 화면 크기 변경
        btn2.clicked.connect(self.resizeSmall) # btn 크기 변경

        # 화면 관련
        self.setWindowTitle('Signal and Slot')
        self.setGeometry(200, 200, 200, 250)
        self.show()
Exemplo n.º 7
0
    def initUI(self):
        self.slider = QSlider(
            Qt.Horizontal,
            self)  # 슬라이더 객체 생성(가로로 만들기), 수평으로 만들건지 수직으로 만들건지 내장 [상수]로 보내준다.
        # 상수는 대부분 Qt가 가지고 있기 때문에 값을 Qt에서 꺼내온다.(Qt.Horizontal / Qt.Vertical)
        self.slider.move(30, 30)  # 위치 설정
        self.slider.setRange(0, 50)  # 슬라이더의 min, max값 설정
        self.slider.setSingleStep(2)  # 한 번 이동시 이동할 틱 값 설정

        self.dial = QDial(self)  # 다이얼 객체 생성
        self.dial.move(30, 50)  # 다이얼 위치 설정
        self.dial.setRange(0, 50)  # 다이얼의 min, Max값 설정

        btn = QPushButton('Default', self)  # Default 라고 쓰여진 버튼 생성
        btn.move(35, 160)  # 버튼 위치 선정

        #slider 따로 dial 따로 하면 아래 3줄은 필요 없음
        self.slider.valueChanged.connect(
            self.dial.setValue)  # 슬라이더의 값에 변화가 일어나면 그 값을 dial.setValue로 보낸다.
        self.dial.valueChanged.connect(
            self.slider.setValue)  # 다이얼의 값이 변했을 때 그 값을 slider.setValue로 보낸다.
        btn.clicked.connect(
            self.button_clicked
        )  # 버튼이 클릭되었을 때 그 값을 button_clicked로 보내준다.(사용자가 만드는 함수)

        self.setWindowTitle('QSlider and QDial')
        self.setGeometry(300, 300, 400, 200)
        self.show()
Exemplo n.º 8
0
    def __init__(self, val):
        super().__init__()

        self.title = "QDial"
        self.top = 100
        self.left = 100
        self.width = 400
        self.height = 120
        self.iconName = "logo.png"

        self.setWindowTitle(self.title)
        self.setWindowIcon(QtGui.QIcon(self.iconName))
        self.setGeometry(self.left, self.top, self.width, self.height)

        vbox = QVBoxLayout()

        self.label = QLabel(self)
        self.label.setFont(QtGui.QFont("Elephant", 10))

        self.dial = QDial()
        self.dial.setMinimum(0)
        self.dial.setMaximum(100)
        self.dial.setValue(30)
        self.dial.valueChanged.connect(self.dial_change)

        vbox.addWidget(self.dial)
        vbox.addWidget(self.label)
        self.setLayout(vbox)

        self.show()
Exemplo n.º 9
0
    def __init__(self, boxwidth, boxheight, parent=None):
        super(TimerGB, self).__init__(parent)
        QGroupBox("Set Interval")

        self.resize(boxwidth, boxheight)

        self.setWindowTitle("Timer")
        self.setFlat(True)

        self.timer_dial = QDial()
        self.timer_dial.setNotchesVisible(True)
        self.timer_dial.setMinimum(1)
        self.timer_dial.setMaximum(30)
        self.timer_dial.setValue(15)
        self.timer_dial.valueChanged.connect(self.on_dial_new_value)
        self.timer_dial.sliderReleased.connect(self.on_dial_released)

        self.value_display = QLabel()
        self.gbvlayout = QVBoxLayout()
        self.gbvlayout.addWidget(self.value_display)
        self.gbvlayout.addWidget(self.timer_dial)
        self.setLayout(self.gbvlayout)
        self.value_display.setText(str(self.timer_dial.value()) + " s")

        self.grab_timer = QTimer()
Exemplo n.º 10
0
 def __init__(self, manometer: AnalogItemType, parent=None):
     super().__init__(parent=parent)
     self.setFont(QFont('Segoi UI', FONT_SIZE))
     self.setFixedWidth(DIAL_WIDTH)
     self.setFixedHeight(DIAL_HEIGHT)
     self.vbox = QVBoxLayout()
     self.vbox.setContentsMargins(0, 0, 0, 0)
     self.setLayout(self.vbox)
     self.caption = QLabel(manometer.name)
     self.caption.setFont(QFont('Segoi UI', FONT_SIZE))
     self.caption.setAlignment(Qt.AlignCenter)
     self.vbox.addWidget(self.caption)
     self.dial = QDial()
     self.vbox.addWidget(self.dial)
     self.dial.setMinimum(0)
     self.dial.setMaximum(round(manometer.eu_range.high * 100))
     self.dial.setValue(0)
     self.dial.setNotchTarget(2)
     self.dial.setNotchesVisible(True)
     self.spin_box = QDoubleSpinBox()
     self.vbox.addWidget(self.spin_box)
     self.spin_box.setMinimum(0)
     self.spin_box.setMaximum(manometer.eu_range.high)
     self.spin_box.setValue(0)
     self.spin_box.setDecimals(2)
     self.spin_box.setSingleStep(0.01)
     self.spin_box.valueChanged.connect(self.on_spin_box_value_changed)
     self.dial.valueChanged.connect(self.on_dial_value_changed)
     self.valueChanged.connect(manometer.set_value)
Exemplo n.º 11
0
    def __init__(self, orientation, name, title, parent=None):
        super(SlidersGroup, self).__init__(title, parent)

        self.name = name
        self.value = 0.0

        valueLabel = QLabel("Current value:")
        #self.valueSpinBox = QDoubleSpinBox ()
        self.valueSpinBox = QSpinBox()
        self.valueSpinBox.setSingleStep(1)
        self.valueSpinBox.setFocusPolicy(QtCore.Qt.StrongFocus)

        self.slider = QSlider(orientation)
        self.slider.setFocusPolicy(QtCore.Qt.StrongFocus)
        self.slider.setTickPosition(QSlider.TicksBothSides)
        self.slider.setTickInterval(10)
        self.slider.setSingleStep(1)

        self.dial = QDial()
        self.dial.setFocusPolicy(QtCore.Qt.StrongFocus)

        self.slider.valueChanged.connect(self.setValue)
        self.dial.valueChanged.connect(self.setValue)

        direction = QBoxLayout.TopToBottom

        slidersLayout = QBoxLayout(direction)
        slidersLayout.addWidget(valueLabel)
        slidersLayout.addWidget(self.valueSpinBox)
        slidersLayout.addWidget(self.slider)
        #slidersLayout.addWidget(self.dial)
        self.setLayout(slidersLayout)
Exemplo n.º 12
0
    def initUI(self):
        count = 0
        lcd = QLCDNumber(self)
        dial = QDial(self)
        btn1 = QPushButton('Big', self)
        btn2 = QPushButton('Small', self)

        hbox = QHBoxLayout()
        hbox.addWidget(btn1)
        hbox.addWidget(btn2)

        vbox = QVBoxLayout()
        vbox.addWidget(lcd)
        vbox.addWidget(dial)
        vbox.addLayout(hbox)
        self.setLayout(vbox)

        dial.valueChanged.connect(lcd.display)
        btn1.clicked.connect(self.resizeBig)
        btn2.clicked.connect(self.resizeSmall)
        btn1.setIcon(QIcon("web.png"))

        self.setWindowTitle('Signal and Slot')
        self.setGeometry(200, 200, 200, 250)
        self.show()
Exemplo n.º 13
0
    def createTopRightGroupBox(self):
        self.topRightGroupBox = QGroupBox("Group 2")
        togglePushButton = QPushButton("Toggle Push Button")
        togglePushButton.setCheckable(True)
        togglePushButton.setChecked(True)

        slider = QSlider(Qt.Horizontal, self.RadiiScaleGroupBox)
        slider.setValue(40)

        scrollBar = QScrollBar(Qt.Horizontal, self.RadiiScaleGroupBox)
        scrollBar.setValue(60)

        dial = QDial(self.RadiiScaleGroupBox)
        dial.setValue(30)
        dial.setNotchesVisible(True)

        layout = QVBoxLayout()
        layout.addWidget(self.openFileNameButton)
        layout.addWidget(togglePushButton)
        layout.addWidget(self.flatPushButton)

        layout.addWidget(slider)
        layout.addWidget(scrollBar)
        layout.addWidget(dial)

        layout.addStretch(1)
        self.topRightGroupBox.setLayout(layout)
Exemplo n.º 14
0
    def __init__(self):
        super().__init__()

        self.title = "PyQt5 - QDial"
        self.left = 500
        self.top = 200
        self.width = 200
        self.height = 200
        self.iconName = "_imagens/mouse.ico"

        self.setWindowTitle(self.title)
        self.setWindowIcon(QtGui.QIcon(self.iconName))
        self.setGeometry(self.left, self.top, self.width, self.height)

        vbox = QVBoxLayout()

        self.label = QLabel()
        self.label.setFont(QtGui.QFont("Sanserif", 15))

        self.dial = QDial()
        self.dial.setMinimum(0)
        self.dial.setMaximum(100)
        self.dial.setValue(30)
        self.dial.valueChanged.connect(self.dial_changed)

        vbox.addWidget(self.dial)
        vbox.addWidget(self.label)
        self.setLayout(vbox)

        self.show()
Exemplo n.º 15
0
   def __init__(self):
      super(window,self).__init__()
      self.currentlocal=0
      self.data=None
      self.checker=0
      self.lastcolored=0
      self.photo = QLabel(self)
      self.port=0
      self.pixmap = QPixmap('photo.png')
      self.pixmap = self.pixmap.scaled(600, 300, QtCore.Qt.KeepAspectRatio)
      self.photo.setPixmap(self.pixmap)

      self.labelgif=QLabel(self)      
      self.labelgif.setStyleSheet("QLabel { background-color : white;}");
      self.labelgif.setGeometry(100,50,500,430)
      self.movie = QtGui.QMovie('data.gif', QtCore.QByteArray(),self.labelgif)
      self.movie.setSpeed(100)
      self.labelgif.setMovie(self.movie) 
      self.movie.start()
      self.labelgif.setVisible(False)

      self.labelyazi=QLabel(self)
      self.labelgif1=QLabel(self)      
      self.labelgif1.setStyleSheet("QLabel { background-color : white;}")
      self.labelyazi.setText('G'+"\u00F6"+"zl"+"\u0259"+"yin..")
      font1=QtGui.QFont('Times',17)
      self.labelyazi.setFont(font1)
      self.labelyazi.setVisible(False)
      self.labelyazi.setGeometry(350,150,150,60)
      self.labelgif1.setGeometry(150,100,489,289)
      self.movie1 = QtGui.QMovie('wait.gif', QtCore.QByteArray(),self.labelgif1)
      self.movie1.setSpeed(100)
      self.labelgif1.setMovie(self.movie1) 
      self.movie1.start()
      self.labelgif1.setVisible(False)

      
      self.setWindowTitle("Diplom i\u015Fi v1")      
      self.setWindowIcon(QtGui.QIcon('pyicon.png'))
      self.button = QPushButton('PyQt5 button', self)#button yaradildi
      self.listw=QListWidget(self)#listWidget yaradildi
      self.button1=QPushButton(self)
      self.buttonlocal=QPushButton(self)
      self.buttonlocal.setText('Qo\u015F')
      self.button1.setText("Temperaturu"+" " +"\u00F6"+"l"+"\u00E7")
      self.dial=QDial(self)
      self.lcd=QLCDNumber(self)
      self.label=QLabel(self)
      self.labelrefresh=QLabel(self)
      self.obj=[]
   
      
      self.listCOM=QListWidget(self)
      self.spin=QSpinBox(self)
      self.radiosan=QRadioButton(self)
      self.radiosan.setText("Saniy"+"\u0259")
      self.radiodeq=QRadioButton(self)
      self.radiodeq.setText("D"+"\u0259"+"qiq"+"\u0259")
      self.starting()
      self.initUI()
    def createEditor(self, parent, option, index):
        editor = QDial(parent=parent)
        editor.setRange(-5, 5)
        editor.setNotchesVisible(True)
        editor.setAutoFillBackground(True)

        return editor
Exemplo n.º 17
0
    def initUI(self):
        grid = QGridLayout()

        envelope = {}
        label = {}
        stages = ["attack", "decay", "sustain", "release"]

        for stage in stages:
            envelope[stage] = QDial()
            envelope[stage].setObjectName(f"{stage}{self.id}")
            envelope[stage].setMinimum(0)
            envelope[stage].setMaximum(100)
            envelope[stage].setValue(0)
            envelope[stage].setNotchesVisible(True)
            envelope[stage].setMaximumSize(40, 40)
            envelope[stage].valueChanged.connect(self.dial_update)

            label[stage] = QLabel(stage[0].upper())
            label[stage].setAlignment(Qt.AlignCenter)

        envelope["sustain"].setValue(100)

        for column, stage in enumerate(stages):
            grid.addWidget(envelope[stage], 0, column)
            grid.addWidget(label[stage], 1, column)

        self.setLayout(grid)
Exemplo n.º 18
0
def group4(window):
    groupbox = QGroupBox("Group 3")
    groupbox.setCheckable(True)
    groupbox.setChecked(True)

    input = QLineEdit("firmanslur", window)
    input.setEchoMode(QLineEdit.Password)

    spin = QSpinBox(window)
    spin.setValue(50)

    tanggal = QDateTimeEdit(window)
    tanggal.setDateTime(QDateTime.currentDateTime())

    slider = QSlider(Qt.Horizontal, window)
    slider.setValue(50)

    scrollBar = QScrollBar(Qt.Horizontal, window)
    scrollBar.setValue(60)

    dial = QDial(window)
    dial.setValue(30)
    dial.setNotchesVisible(True)

    layout = QGridLayout()
    layout.addWidget(input, 0, 0, 1, 2)
    layout.addWidget(spin, 1, 0, 1, 2)
    layout.addWidget(tanggal, 2, 0, 1, 2)
    layout.addWidget(slider, 3, 0)
    layout.addWidget(scrollBar, 4, 0)
    layout.addWidget(dial, 3, 1, 2, 1)
    layout.setRowStretch(5, 1)
    groupbox.setLayout(layout)
    return groupbox
Exemplo n.º 19
0
 def dial(self):
     self.widget = QDial(self)
     self.widget.setGeometry(100, 100, 150, 200)  # x,y,w,h
     self.widget.setRange(0, 100)
     self.widget.setSingleStep(1)  # set keyboard input to 1 step
     self.widget.setSliderPosition(0)  # set pos to 0
     self.widget.valueChanged.connect(self.value_changed)
    def __init__(self):
        QWidget.__init__(self, flags=Qt.Widget)
        self.le = QLineEdit()
        self.dial = QDial()
        self.sld = CustomSlider(Qt.Horizontal)

        self.init_widget()
Exemplo n.º 21
0
    def initUI(self):
        self.setWindowTitle('My First Application')
        self.setWindowIcon(QIcon('web.png'))
        self.move(300, 300)
        self.resize(400, 200)
        # self.setGeometry(300, 300, 300, 200)
        btn1 = QPushButton('Quit',self)
        lcd = QLCDNumber(self)
        dial = QDial(self)
        grid = QGridLayout()
        self.setLayout(grid)

        grid.addWidget(QLabel('Title:'), 0, 0)
        grid.addWidget(QLabel('Author:'), 1, 0)
        grid.addWidget(QLabel('Review:'), 2, 0)
        grid.addWidget(lcd, 3, 1)
        grid.addWidget(dial, 4, 1)
        grid.addWidget(btn1, 5, 1)

        grid.addWidget(QLineEdit(), 0, 1)
        grid.addWidget(QLineEdit(), 1, 1)
        grid.addWidget(QTextEdit(), 2, 1)
        # grid.addWidget(QPushButton(), 3, 1)
        dial.valueChanged.connect(lcd.display)
        btn1.clicked.connect(QCoreApplication.instance().quit)

        # btn = QPushButton('Quit', self)
        # btn.move(50, 50)
        # btn.resize(btn.sizeHint())
        # btn.clicked.connect(QCoreApplication.instance().quit)
        self.show()
Exemplo n.º 22
0
    def __init__(self, parent=None, closeAction=None):
        super(IrisSetter, self).__init__(parent)

        global IrisRatio

        self.closeAction = closeAction
        self.setAutoFillBackground(True)
        p = self.palette()
        p.setColor(self.backgroundRole(), Qt.white)
        self.setPalette(p)

        self.irisRatio = IrisRatio
        self.irisLabel = QLabel("Iris : " + str(self.irisRatio))
        self.irisDial = QDial()
        self.irisDial.setRange(0, 100)
        self.irisDial.setValue(int(100 * self.irisRatio))
        self.irisDial.valueChanged.connect(self.valueChange)
        closeButton = QPushButton("Close")
        closeButton.clicked.connect(self.closeButtonClicked)
        resetButton = QPushButton("Reset")
        resetButton.clicked.connect(self.resetButtonClicked)

        layout = QGridLayout()
        layout.addWidget(self.irisLabel, 0, 1)
        layout.addWidget(self.irisDial, 1, 0, 1, 2)
        layout.addWidget(resetButton, 2, 0)
        layout.addWidget(closeButton, 2, 1)
        self.setLayout(layout)
Exemplo n.º 23
0
    def __init__(self, title, parent=None):
        super(ServoControls, self).__init__(title, parent)

        self.slider = QSlider(Qt.Horizontal)
        self.slider.setFocusPolicy(Qt.StrongFocus)
        self.slider.setTickPosition(QSlider.TicksBothSides)
        self.slider.setTickInterval(10)
        self.slider.setSingleStep(1)

        self.dial = QDial()
        self.dial.setFocusPolicy(Qt.StrongFocus)
        self.dial.setNotchesVisible(True)

        self.lcd_display = QLCDNumber()
        self.lcd_display.display(22)

        self.slider.valueChanged.connect(self.dial.setValue)
        self.dial.valueChanged.connect(self.lcd_display.display)
        self.dial.valueChanged.connect(self.slider.setValue)
        self.dial.valueChanged.connect(self.valueChanged)

        boxLayout = QBoxLayout(QBoxLayout.TopToBottom)
        boxLayout.addWidget(self.slider)
        boxLayout.addWidget(self.dial)
        boxLayout.addWidget(self.lcd_display)
        boxLayout.setStretchFactor(self.dial, 20)
        self.setLayout(boxLayout)

        self.setMinimum(0)
        self.setMaximum(100)
        self.dial.setWrapping(True)
Exemplo n.º 24
0
    def __init__(self,
                 scale=0.01,
                 parent=None,
                 closeAction=None,
                 changedAction=None):
        super(PlaneSetter, self).__init__(parent)

        self.closeAction = closeAction
        self.changedAction = changedAction
        self.setAutoFillBackground(True)
        p = self.palette()
        p.setColor(self.backgroundRole(), Qt.white)
        self.setPalette(p)

        self.shift = getPlaneShift()
        self.scale = scale

        self.planeLabel = QLabel("Plane : " + "{0:5.3f}".format(self.shift))
        self.planeDial = QDial()
        self.planeDial.setRange(-100, 100)
        self.planeDial.setValue(int(self.shift / self.scale))
        self.planeDial.valueChanged.connect(self.valueChange)
        closeButton = QPushButton("Close")
        closeButton.clicked.connect(self.closeButtonClicked)
        resetButton = QPushButton("Reset")
        resetButton.clicked.connect(self.resetButtonClicked)

        layout = QGridLayout()
        layout.addWidget(self.planeLabel, 0, 1)
        layout.addWidget(self.planeDial, 1, 0, 1, 2)
        layout.addWidget(resetButton, 2, 0)
        layout.addWidget(closeButton, 2, 1)
        self.setLayout(layout)
Exemplo n.º 25
0
    def initUI(self):
        lcd = QLCDNumber(self)
        dial = QDial(self)
        # QLCDNumber 위젯은 LCD 화면과 같이 숫자를 표시합니다.
        #
        # QDial은 회전해서 값을 조절하는 위젯입니다.

        vbox = QVBoxLayout()
        vbox.addWidget(lcd)
        vbox.addWidget(dial)
        self.setLayout(vbox)
        # 수직 박스 레이아웃(박스 레이아웃 참고)을 하나 만들어서
        # QLCDNumber와 QDial 위젯을 넣어줍니다.
        #
        # 그리고 MyApp 위젯의 레이아웃으로 설정합니다.

        dial.valueChanged.connect(lcd.display)
        # QDial 위젯은 몇 가지 시그널을 갖고 있습니다(QSlider, QDial 참고).
        #
        # 여기서는 valueChanged 시그널을 lcd의 display 슬롯에 연결합니다.
        # display 슬롯은 숫자를 받아서 QLCDNumber 위젯에 표시하는 역할을 합니다.
        #
        # 여기서 시그널을 보내는 객체인 송신자 (sender)는 dial,
        # 시그널을 받는 객체인 수신자 (receiver)는 lcd입니다.
        #
        # 슬롯 (slot)은 시그널에 어떻게 반응할지를 구현한 메서드입니다.

        self.setWindowTitle('Signal and Slot')
        self.setGeometry(300, 300, 200, 200)
        self.show()
Exemplo n.º 26
0
    def __init__(self, orientation, title, parent=None):
        super(SlidersGroup, self).__init__(title, parent)

        self.slider = QSlider(orientation)
        self.slider.setFocusPolicy(Qt.StrongFocus)
        self.slider.setTickPosition(QSlider.TicksBothSides)
        self.slider.setTickInterval(10)
        self.slider.setSingleStep(1)

        self.scrollBar = QScrollBar(orientation)
        self.scrollBar.setFocusPolicy(Qt.StrongFocus)

        self.dial = QDial()
        self.dial.setFocusPolicy(Qt.StrongFocus)

        self.slider.valueChanged.connect(self.scrollBar.setValue)
        self.scrollBar.valueChanged.connect(self.dial.setValue)
        self.dial.valueChanged.connect(self.slider.setValue)
        self.dial.valueChanged.connect(self.valueChanged)

        if orientation == Qt.Horizontal:
            direction = QBoxLayout.TopToBottom
        else:
            direction = QBoxLayout.LeftToRight

        slidersLayout = QBoxLayout(direction)
        slidersLayout.addWidget(self.slider)
        slidersLayout.addWidget(self.scrollBar)
        slidersLayout.addWidget(self.dial)
        self.setLayout(slidersLayout)
Exemplo n.º 27
0
    def __init__(self, name, maxV, bipolar=True, parent=None):
        super(QDialSlider, self).__init__(parent)
        self.overflow = False
        self.value = 0.0
        if (maxV > 10):
            self.slider_multi = 10
        else:
            self.slider_multi = 100
        # Object
        self.edit = QDoubleSpinBox()
        self.dial = QDial()
        self.slider = QSlider(Qt.Horizontal)
        self.scale = QScale(maxV, bipolar)
        self.layout = self.CreateGroup(name)
        self.timer = QtCore.QTimer()

        # Property
        self.dial.setRange(-10, 10)
        self.slider.setTickInterval(100)
        self.edit.setSingleStep(0.01)
        self.edit.setDecimals(2)
        if bipolar:
            self.edit.setRange(-maxV, maxV)
            self.slider.setRange(int(-maxV * self.slider_multi),
                                 int(maxV * self.slider_multi))
        else:
            self.edit.setRange(0, maxV)
            self.slider.setRange(0, int(maxV * self.slider_multi))

        # Event
        self.slider.valueChanged.connect(self.SliderChange)
        self.edit.valueChanged.connect(self.EditChange)
        self.dial.sliderPressed.connect(self.DialPress)
        self.dial.sliderReleased.connect(self.DialRelease)
        self.timer.timeout.connect(self.onTimer)
Exemplo n.º 28
0
    def initUI(self):
        self.slider = QSlider(Qt.Horizontal, self)
        # QSlider 위젯을 하나 만들었습니다. Qt.Horizontal 또는
        # Qt.Vertical을 입력해줌으로써 수평 또는 수직 방향을 설정합니다.
        self.slider.move(30, 30)
        self.slider.setRange(0, 50)
        # setRange() 메서드로 값의 범위를 0에서 50까지로 설정합니다.
        # setSingleStep() 메서드는 조절 가능하는 최소 단위를 설정합니다
        self.slider.setSingleStep(2)

        self.dial = QDial(self)
        # QDial 위젯을 하나 만들었습니다.
        self.dial.move(30, 50)
        self.dial.setRange(0, 50)
        # 슬라이더와 마찬가지로 setRange() 메서드로 범위를 정해줍니다.

        btn = QPushButton('Default', self)
        btn.move(35, 160)

        self.slider.valueChanged.connect(self.dial.setValue)
        self.dial.valueChanged.connect(self.slider.setValue)
        # 슬라이더와 다이얼의 값이 변할 때 발생하는 시그널을 각각 다이얼과
        # 슬라이더의 값을 조절해주는 메서드 (setValue)에 서로 연결함으로써
        # 두 위젯의 값이 언제나 일치하도록 해줍니다.
        btn.clicked.connect(self.button_clicked)
        # 'Default' 푸시 버튼을 클릭하면 발생하는 시그널을 button_clicked 메서드에 연결합니다.

        self.setWindowTitle('QSlider and QDial')
        self.setGeometry(300, 300, 400, 200)
        self.show()
Exemplo n.º 29
0
    def createBottomRightGroupBox(self):
        self.bottomRightGroupBox = QGroupBox("Group 3")
        self.bottomRightGroupBox.setCheckable(True)
        self.bottomRightGroupBox.setChecked(True)

        lineEdit = QLineEdit('s3cRe7')
        lineEdit.setEchoMode(QLineEdit.Password)

        spinBox = QSpinBox(self.bottomRightGroupBox)
        spinBox.setValue(50)

        dateTimeEdit = QDateTimeEdit(self.bottomRightGroupBox)
        dateTimeEdit.setDateTime(QDateTime.currentDateTime())

        slider = QSlider(Qt.Horizontal, self.bottomRightGroupBox)
        slider.setValue(40)

        scrollBar = QScrollBar(Qt.Horizontal, self.bottomRightGroupBox)
        scrollBar.setValue(60)

        dial = QDial(self.bottomRightGroupBox)
        dial.setValue(30)
        dial.setNotchesVisible(True)

        layout = QGridLayout()
        layout.addWidget(lineEdit, 0, 0, 1, 2)
        layout.addWidget(spinBox, 1, 0, 1, 2)
        layout.addWidget(dateTimeEdit, 2, 0, 1, 2)
        layout.addWidget(slider, 3, 0)
        layout.addWidget(scrollBar, 4, 0)
        layout.addWidget(dial, 3, 1, 2, 1)
        layout.setRowStretch(5, 1)
        self.bottomRightGroupBox.setLayout(layout)
Exemplo n.º 30
0
    def __init__(self):
        super().__init__()

        self.title = "PyQt5 Scroll Bar"
        self.top = 200
        self.left = 500
        self.width = 400
        self.height = 300

        self.setWindowIcon(QtGui.QIcon("icon.png"))
        self.setWindowTitle(self.title)
        self.setGeometry(self.left, self.top, self.width, self.height)

        vbox = QVBoxLayout()

        self.label = QLabel(self)
        self.label.setFont(QtGui.QFont("Sanserif", 15))

        self.dial = QDial()
        self.dial.setMaximum(0)
        self.dial.setMaximum(100)
        self.dial.setValue(30)
        self.label.setText("Dialer Value : " + str(self.dial.value()))
        self.dial.valueChanged.connect(self.dialer_changed)

        vbox.addWidget(self.dial)
        vbox.addWidget(self.label)
        self.setLayout(vbox)

        self.show()