def initGame(self, chosenChrono): self.nberreurs = 0 self.nbSucces = 0 self.t0 = time() self.timeGiven = chosenChrono ## la fenetre self.setWindowTitle("Drag and Drop") #self.setFixedSize(853, 554) self.resize(self.parent().frameSize()) ## le jeu comme defini ci dessus self.layout = QVBoxLayout(self) #self.layout.setContentsMargins(0, 0, 0, 0) self.gameArea = QWidget(self) self.gameArea.setFixedSize(self.frameSize().width(), self.frameSize().height() - 65) self.layout.addWidget(self.gameArea) #self.gameArea.resize(833, 423) #self.theGame=DragDropGame(self, self.myCards) ## la barre de boutons/compteurs du bas self.BottomWidget = QWidget(self) self.BottomWidget.resize(self.frameSize().width() - 20, 61) #self.BottomWidget.setGeometry(QtCore.QRect(10, 440, 731, 61)) self.layout.addWidget(self.BottomWidget) self.GameBox = QHBoxLayout(self.BottomWidget) self.GameBox.setContentsMargins(0, 0, 0, 0) # les boutons de gestion de partie self.newButton = QPushButton(u"New Round", self.BottomWidget) self.GameBox.addWidget(self.newButton) self.saveButton = QPushButton(u"Save Round", self.BottomWidget) self.GameBox.addWidget(self.saveButton) self.resetButton = QPushButton(u"Reset", self.BottomWidget) self.resetButton.clicked.connect(self.resetSignal.emit) self.GameBox.addWidget(self.resetButton) # compteur chrono self.chrono = QLCDNumber(self.BottomWidget) self.chrono.setDigitCount(2) self.GameBox.addWidget(self.chrono) self.timer = QtCore.QTimer(self) self.timer.timeout.connect(self.Time) self.timer.start(10) # bouton pour afficher ses erreurs self.mistakesButton = QPushButton(u"See mistakes", self.BottomWidget) self.GameBox.addWidget(self.mistakesButton) # compteur d'erreurs self.failure = QLCDNumber(self.BottomWidget) self.failure.setStyleSheet("color: rgb(252, 0, 6);\n" "border-color: rgb(0, 0, 0);\n" "") self.failure.setDigitCount(5) self.timer2 = QtCore.QTimer(self) self.timer2.timeout.connect(self.Mistake) self.timer2.start(10) self.GameBox.addWidget(self.failure)
def initUI(self): self.resize(1000, 400) self.center() self.setWindowTitle('ECG SmallNet Classifier') # plot widget self.plotWidget = pg.PlotWidget(self) self.plot = self.plotWidget.plot(pen=pg.mkPen('r', width=2)) self.plotWidget.setLabel('left', '', 'mV') self.setCentralWidget(self.plotWidget) # dock widget self.HRLcd = QLCDNumber(self) self.NormalLcd = QLCDNumber(self) self.AbNormalLcd = QLCDNumber(self) self.UnknowLcd = QLCDNumber(self) dock = QDockWidget("HR", self) dock.setWidget(self.HRLcd) self.addDockWidget(Qt.LeftDockWidgetArea, dock) dock = QDockWidget('Index', self) w1 = QWidget(self) vbox = QVBoxLayout() vbox.addWidget(self.createLabel('Normal'), 0, Qt.AlignTop) vbox.addWidget(self.NormalLcd, 5) w1.setLayout(vbox) w2 = QWidget(self) vbox = QVBoxLayout() vbox.addWidget(self.createLabel('Abnormal'),0, Qt.AlignTop) vbox.addWidget(self.AbNormalLcd, 4) w2.setLayout(vbox) w3 = QWidget(self) vbox = QVBoxLayout() vbox.addWidget(self.createLabel('Unknown'), 0, Qt.AlignTop) vbox.addWidget(self.UnknowLcd, 3) w3.setLayout(vbox) hbox = QHBoxLayout() hbox.addWidget(w1) hbox.addWidget(w2) hbox.addWidget(w3) w = QWidget(self) w.setLayout(hbox) dock.setWidget(w) self.addDockWidget(Qt.BottomDockWidgetArea, dock) self.statusBar() self.show()
def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) # default number is 0 self._displayed_tid = QLCDNumber(self._LCD_DIGITS) self._displayed_tid.display(None) self._n_total_pulses = QLCDNumber(self._LCD_DIGITS) self._n_kept_pulses = QLCDNumber(self._LCD_DIGITS) self._dark_train_counter = QLCDNumber(self._LCD_DIGITS) self._n_dark_pulses = QLCDNumber(self._LCD_DIGITS) self._last_processed_tid = QLCDNumber(self._LCD_DIGITS) self._n_processed = QLCDNumber(self._LCD_DIGITS) self._n_dropped = QLCDNumber(self._LCD_DIGITS) self._reset_process_count_btn = QPushButton("Reset process count") self._mon = MonProxy() self._resetProcessCount() # initialization self._timer = QTimer() self._timer.timeout.connect(self._updateProcessCount) self._timer.start(config["GUI_PLOT_WITH_STATE_UPDATE_TIMER"]) self.initUI() self.initConnections()
def initUI(self): panicButton = QPushButton('PÂNICO', self) panicButton.resize(panicButton.sizeHint()) panicButton.clicked.connect(self.panicButtonClicked) tempLabel = QLabel('Temperatura') lumLabels = [QLabel('Luminosidade 1'), QLabel('Luminosidade 2')] lightSwitchLabel = QLabel('Acender/Desligar Luz') gateSwitchLabel = QLabel('Abrir/Fechar Portão') self.tempLCD = QLCDNumber() self.lumLCD = [QLCDNumber(), QLCDNumber()] lightSwitch = QPushButton("Ligar", self) lightSwitch.resize(lightSwitch.sizeHint()) lightSwitch.clicked.connect(self.lightSwitchClicked) self.lightSwitchState = False gateSwitch = QPushButton("Abrir", self) gateSwitch.resize(gateSwitch.sizeHint()) gateSwitch.clicked.connect(self.gateSwitchClicked) self.gateSwitchState = False grid = QGridLayout() grid.setSpacing(10) grid.addWidget(tempLabel, 1, 0) grid.addWidget(self.tempLCD, 1, 1) grid.addWidget(lumLabels[0], 2, 0) grid.addWidget(self.lumLCD[0], 2, 1) grid.addWidget(lumLabels[1], 3, 0) grid.addWidget(self.lumLCD[1], 3, 1) grid.addWidget(lightSwitchLabel, 4, 0) grid.addWidget(lightSwitch, 4, 1) grid.addWidget(gateSwitchLabel, 5, 0) grid.addWidget(gateSwitch, 5, 1) grid.addWidget(panicButton, 6, 1) self.setLayout(grid) self.setGeometry(300, 300, 350, 300) self.setWindowIcon(QIcon('imgs/shouse.png')) self.setWindowTitle('Controle Residencial') self.center() self.show()
def initUi(self): lcd = QLCDNumber(self) lcd2 = QLCDNumber(self) dial = QDial(self) slider = QSlider(self) self.setGeometry(300, 300, 700, 250) self.setWindowTitle('学点编程吧') lcd.setGeometry(100, 50, 150, 60) lcd2.setGeometry(400, 50, 150, 60) dial.setGeometry(120, 120, 100, 100) slider.setGeometry(420, 120, 100, 100) dial.valueChanged.connect(lcd.display) slider.valueChanged.connect(lcd2.display) self.show()
def initUI(self): num1 = QLabel('Число 1') num2 = QLabel('Число 2') num3 = QLabel('Сложение') num4 = QLabel('Вычитание') num5 = QLabel('Произведение') num6 = QLabel('Деление') num11 = QLineEdit() num22 = QLineEdit() lcd1 = QLCDNumber() lcd2 = QLCDNumber() lcd3 = QLCDNumber() lcd4 = QLCDNumber() btn = QPushButton() btn.setText('Рассчитать') grid = QGridLayout() grid.setSpacing(10) grid.addWidget(num1, 1, 0) grid.addWidget(num11, 1, 1) grid.addWidget(num2, 2, 0) grid.addWidget(num22, 2, 1) grid.addWidget(num2, 2, 0) grid.addWidget(num22, 2, 1) grid.addWidget(lcd1, 4, 1) grid.addWidget(lcd2, 5, 1) grid.addWidget(lcd3, 6, 1) grid.addWidget(lcd4, 7, 1) grid.addWidget(num3, 4, 0) grid.addWidget(num4, 5, 0) grid.addWidget(num5, 6, 0) grid.addWidget(num6, 7, 0) grid.addWidget(btn, 3, 0) self.setLayout(grid) self.setGeometry(500, 500, 550, 500) self.setWindowTitle('Миникалькулятор') btn.clicked.connect( lambda checked, q1=num11, q2=num22, l1=lcd1, l2=lcd2, l3=lcd3, l4= lcd4: self.calc(q1, q2, l1, l2, l3, l4)) self.show()
def __init__(self): super(TetrixWindow, self).__init__() self.board = TetrixBoard() nextPieceLabel = QLabel() nextPieceLabel.setFrameStyle(QFrame.Box | QFrame.Raised) nextPieceLabel.setAlignment(Qt.AlignCenter) self.board.setNextPieceLabel(nextPieceLabel) scoreLcd = QLCDNumber(5) scoreLcd.setSegmentStyle(QLCDNumber.Filled) levelLcd = QLCDNumber(2) levelLcd.setSegmentStyle(QLCDNumber.Filled) linesLcd = QLCDNumber(5) linesLcd.setSegmentStyle(QLCDNumber.Filled) startButton = QPushButton("&Start") startButton.setFocusPolicy(Qt.NoFocus) quitButton = QPushButton("&Quit") quitButton.setFocusPolicy(Qt.NoFocus) pauseButton = QPushButton("&Pause") pauseButton.setFocusPolicy(Qt.NoFocus) startButton.clicked.connect(self.board.start) pauseButton.clicked.connect(self.board.pause) quitButton.clicked.connect(QApplication.instance().quit) self.board.scoreChanged.connect(scoreLcd.display) self.board.levelChanged.connect(levelLcd.display) self.board.linesRemovedChanged.connect(linesLcd.display) layout = QGridLayout() layout.addWidget(self.createLabel("NEXT"), 0, 0) layout.addWidget(nextPieceLabel, 1, 0) layout.addWidget(self.createLabel("LEVEL"), 2, 0) layout.addWidget(levelLcd, 3, 0) layout.addWidget(startButton, 4, 0) layout.addWidget(self.board, 0, 1, 6, 1) layout.addWidget(self.createLabel("SCORE"), 0, 2) layout.addWidget(scoreLcd, 1, 2) layout.addWidget(self.createLabel("LINES REMOVED"), 2, 2) layout.addWidget(linesLcd, 3, 2) layout.addWidget(quitButton, 4, 2) layout.addWidget(pauseButton, 5, 2) self.setLayout(layout) self.setWindowTitle("Tetrix") self.resize(550, 370)
def initUI(self): self.clock_screen = QLCDNumber(self) self.clock_screen.setStyleSheet( "color : black ; background-color: white") self.clock_screen.setDigitCount(8) self.clock_screen.setGeometry(QtCore.QRect(0, 0, 550, 150)) self.showTime()
def __init__(self, parent=None): super(MainWindow, self).__init__(parent) # --- Slider erstellen ----- self.mySlider = QSlider(Qt.Horizontal, self) self.mySlider.setFocusPolicy(Qt.NoFocus) self.mySlider.setGeometry(30, 40, 180, 30) # x,y,w,h self.mySlider.setValue(20) # --- LCD konstruieren ----- self.myLcd = QLCDNumber(2, self) self.myLcd.setGeometry(60, 100, 80, 50) # x,y,w,h self.myLcd.display(20) # Verbinden des Signals valueChanged # mit der Slot-Funktion myLcd.display self.mySlider.valueChanged[int].connect(self.myLcd.display) # --- zwei PushButtons myPBmore = QPushButton(self) myPBmore.setText('>') myPBmore.setGeometry(0, 0, 40, 40) # x,y,w,h myPBmore.clicked.connect(self.plus) self.myPBless = QPushButton(self) self.myPBless.setText('<') self.myPBless.setGeometry(180, 0, 40, 40) # x,y,w,h self.myPBless.clicked.connect(self.minus) # --- Window konfigurieren self.setGeometry(300, 300, 280, 170) self.setWindowTitle('Robotik Bocholt - Slider LCD') self.show()
def initUI(self): self.number = QLCDNumber( self ) #grid = QVBoxLayout() grid = QGridLayout() grid.addWidget( self.number,1,0,1,3 ) button_list = [] names = ['7', '8', '9', '4', '5', '6', '1', '2', '3', 'cls','0', 'call' ] positions = [(i,j) for i in range(2,6) for j in range(3)] for position, name in zip(positions, names): button = QPushButton(name) button.clicked.connect( self.buttonClicked ) button_list.append( button ) grid.addWidget(button, *position) #grid.addLayout( grid_2 ) self.setLayout( grid ) #self.set self.setGeometry( 600,300,200,300 ) self.setWindowTitle('Phone') self.show()
def __init__(self): QMainWindow.__init__(self) self.resize(1300, 700) self.setFixedSize(self.size()) self.setWindowTitle('PyChord') self.add_combo_boxes() self.add_buttons() self.sl = QSlider(Qt.Horizontal, self) self.volume = QLCDNumber(self) self.add_slider() self.actual_key = None self.actual_meter = 4 self.actual_instrument = instrument.Piano() self.melody_stream = stream.Stream() self.harmonized_melody_stream = stream.Stream() self.reset_stream(self.melody_stream) self.reset_stream(self.harmonized_melody_stream) mixer.init(44100, -16, 2, 1024) self.tmpStream = stream.Stream() self.tmpStream.insert(instrument.Piano()) self.lpc = lily.translate.LilypondConverter() self.lpc.context = lily.lilyObjects.LyMusicList() self.keyboard = Keyboard(self) self.melody = Melody(self, self.actual_key)
def initUi(self): grid = QGridLayout() self.setLayout(grid) self.setGeometry(300, 300, 400, 300) self.setWindowTitle('Learn PyQt5') self.lcd = QLCDNumber() grid.addWidget(self.lcd, 0, 0, 3, 0) grid.setSpacing(10) names = ['Cls', 'Bc', '', 'Close', '7', '8', '9', '/', '4', '5', '6', '*', '1', '2', '3', '-', '0', '.', '=', '+'] positions = [(i, j) for i in range(4, 9) for j in range(4, 8)] for position, name in zip(positions, names): if name == '': continue button = QPushButton(name) grid.addWidget(button, *position) button.clicked.connect(self.Cli) self.show()
def initUI(self): # 设置窗口属性 self.setGeometry(200, 200, 300, 300) self.setWindowTitle('格子布局') # 创建并设置格子布局 grid = QGridLayout() self.setLayout(grid) self.lcd = QLCDNumber() # 参数1:控件名 ,参数2:行,参数3:列,参数4:占用的行数,参数5:占用的列数,参数6:对齐方式 grid.addWidget(self.lcd, 0, 0, 4, 0) grid.setSpacing(10) names = [ 'Cls', 'Bc', '', 'Close', '7', '8', '9', '/', '4', '5', '6', '*', '1', '2', '3', '-', '0', '.', '=', '+' ] positions = [(i, j) for i in range(4, 9) for j in range(4, 8)] for position, name in zip(positions, names): if name == '': continue button = QPushButton(name) grid.addWidget(button, position[0], position[1], 1, 1) # grid.addWidget(button, *position) button.clicked.connect(self.bt_cli) self.show()
def initUI(self): lcd = QLCDNumber(self) sld = QSlider(Qt.Horizontal, self) # Первая строка - экземпляр LCD циферблата # Вторая строка - экземпляр бегунка vbox = QVBoxLayout() vbox.addWidget(lcd) vbox.addWidget(sld) # Первая строка - вертикальный макет # Вторая строка - добавляем lcd дисплей в макет # третья строка - добавляем бегунок в макет self.setLayout(vbox) # Помещаем макет в приложение sld.valueChanged.connect(lcd.display) # Здесь мы присоединяем сигнал valueChanged слайдера к слоту display числа lcd. # Отправитель – объект, который посылает сигнал. # Получатель – объект, который получает сигнал. # Слот – это метод, который реагирует на сигнал. self.setGeometry(300, 300, 250, 150) self.setWindowTitle('Signal & slot') self.show()
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()
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()
def __init__(self): super().__init__() self.resize(600, 500) self.setWindowTitle('flutnet - ArtNet pixelflut') self.lcd = QLCDNumber() sliderLed = QSlider(Qt.Horizontal) sliderLed.setMaximum(ledAmount) sliderLed.setMinimum(0) sliderLed.valueChanged.connect(self.updateCount) sliderR = QSlider(Qt.Horizontal) sliderR.setMaximum(255) sliderR.setMinimum(0) sliderR.valueChanged.connect(self.updateR) sliderG = QSlider(Qt.Horizontal) sliderG.setMaximum(255) sliderG.setMinimum(0) sliderG.valueChanged.connect(self.updateG) sliderB = QSlider(Qt.Horizontal) sliderB.setMaximum(255) sliderB.setMinimum(0) sliderB.valueChanged.connect(self.updateB) layout = QVBoxLayout() layout.addWidget(self.lcd) layout.addWidget(sliderLed) layout.addWidget(sliderR) layout.addWidget(sliderG) layout.addWidget(sliderB) self.setLayout(layout)
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)
def longBreakTab(self): """Set up the long break tab, widgets and layout.""" # Convert starting time to display on timer start_time = self.calculateDisplayTime(self.long_break_limit) self.long_break_lcd = QLCDNumber() self.long_break_lcd.setObjectName("LongLCD") self.long_break_lcd.setSegmentStyle(QLCDNumber.Filled) self.long_break_lcd.display(start_time) self.long_start_button = QPushButton("Start") self.long_start_button.clicked.connect(self.startCountDown) self.long_stop_button = QPushButton("Stop") self.long_stop_button.clicked.connect(self.stopCountDown) self.long_reset_button = QPushButton("Reset") self.long_reset_button.clicked.connect(self.resetCountDown) button_h_box = QHBoxLayout() # Horizontal layout for buttons button_h_box.addWidget(self.long_start_button) button_h_box.addWidget(self.long_stop_button) button_h_box.addWidget(self.long_reset_button) # Create and set layout for the long break tab v_box = QVBoxLayout() v_box.addWidget(self.long_break_lcd) v_box.addLayout(button_h_box) self.long_break_tab.setLayout(v_box)
def initUI(self): self.resize(560, 700) self.center() self.setWindowTitle('Teris') nextLabel = QLabel('下一个方块:', self) nextLabel.setFont(QFont("Roman times", 16, QFont.Bold)) nextLabel.move((self.backWidth + 3) * self.blockSize, 30) scoreLabel = QLabel('当前得分:', self) scoreLabel.setFont(QFont("Roman times", 16, QFont.Bold)) scoreLabel.move((self.backWidth + 3) * self.blockSize, 230) self.scoreNumber = QLCDNumber(self) self.scoreNumber.move((self.backWidth + 3) * self.blockSize, 260) self.scoreNumber.setSegmentStyle(QLCDNumber.Flat) self.scoreNumber.setStyleSheet( "font-size: 30px; color: red; border: 1px solid black; height: 100px; width: 100px;" ) self.timer = QBasicTimer() self.background = bg.Background(self.backWidth, self.backHeight, self.blockSize, self.blockOffset) self.productShape() self.startHandler() self.show()
def initUI(self): #设置组件大小 宽高251px * 150px self.resize(251,150) #设置窗口标题 self.setWindowTitle('构建创意时钟') #设置窗口LOGO self.setWindowIcon(QIcon('C:/Users/19845/Desktop/a.jpg')) #初始化 调色板 self.plt = QPalette() #设置背景颜色 深青色 self.plt.setColor(QPalette.Background,Qt.darkCyan) #设置当前窗体自动填充渲染背景颜色 self.setAutoFillBackground(True) #设置顶层布局 self.setPalette(self.plt) #初始化 LCD数字组件 self.lcd = QLCDNumber() #设置显示数字个数 self.lcd.setDigitCount(10) #设置显示样式的模式,为平面模式 self.lcd.setSegmentStyle(QLCDNumber.Flat) #设置显示模式,为10进制 self.lcd.setMode(QLCDNumber.Dec) #获取本地时间,显示到窗口中 self.lcd.display(time.strftime('%X',time.localtime())) #初始化盒子布局 self.box = QVBoxLayout() #把要显示的LCD界面添加到布局中 统一管理 self.box.addWidget(self.lcd) #设置组件到窗口中间位置显示 self.box.setAlignment(Qt.AlignCenter) #将所有逻辑设置到顶层布局中 self.setLayout(self.box) #显示所有ui界面 self.show()
def create_test_stage_elements(self): self.number_indicator = QLCDNumber(self) self.number_indicator.setDigitCount(5) self.number_indicator.display("00:00") self.number_indicator.setFixedSize(400, 100) self.timer = QtCore.QTimer() self.timer.setInterval(10) self.timer.timeout.connect(self.display) self.vbox_for_test_elements.addWidget(self.number_indicator, alignment=QtCore.Qt.AlignHCenter) self.vbox_for_test_elements.addStretch(1) self.btn_square = QtWidgets.QPushButton(' ', self) self.btn_square.setFixedSize(500, 500) self.btn_square.setShortcut("Space") palette = self.palette() palette.setColor(QtGui.QPalette.Button, self.square_color_before_change) self.btn_square.setPalette(palette) self.btn_square.update() self.vbox_for_test_elements.addWidget(self.btn_square, alignment=QtCore.Qt.AlignTop | QtCore.Qt.AlignHCenter) self.vbox_for_test_elements.addStretch(1) self.btn_start_stop = QtWidgets.QPushButton('Старт') self.btn_start_stop.setFixedSize(300, 50) self.btn_start_stop.clicked.connect(self.start_test) self.vbox_for_test_elements.addWidget(self.btn_start_stop, alignment=QtCore.Qt.AlignBottom | QtCore.Qt.AlignHCenter) self.main_elements_created = True self.main_vbox.addLayout(self.vbox_for_test_elements)
def __init__(self, vSl=32, parent=None): super(Sliderdemo, self).__init__(parent) lcd = QLCDNumber(self) lcd.display(32) vbox = QVBoxLayout() sld = QSlider(Qt.Horizontal, self) sld.setMinimum(32) sld.setTickInterval(1) sld.setMaximum(255) sld.setValue(vSl) sld.setTickPosition(QSlider.TicksBelow) sld.setTickInterval(10) vbox.addWidget(lcd) vbox.addWidget(sld) sld.valueChanged[int].connect(self.valuechange) self.setLayout(vbox) sld.valueChanged.connect(lcd.display) self.setWindowTitle("slider") # print(self.valuechange()) self.speed = 32 self.thread = None if not self.thread: self.thread = SomeThread() self.thread.progressed.connect(self.on_progress) self.thread.finished.connect(self.on_finished) self.thread.start()
def initUI(self): okButton = QPushButton("OK") cancelButton = QPushButton("Cancel") label_ = QLabel("label", self) hbox = QHBoxLayout() hbox.addStretch(1) hbox.addWidget(okButton) hbox.addWidget(cancelButton) hbox.addWidget(label_) vbox = QVBoxLayout() vbox.addStretch(1) vbox.addLayout(hbox) gbox = QGridLayout() gbox.addLayout(vbox, 1, 1) self.setLayout(gbox) lnum = QLCDNumber(self) sld = QSlider(Qt.Horizontal, self) sld.valueChanged.connect(lnum.display) vbox.addWidget(lnum) vbox.addWidget(sld) self.setGeometry(300, 300, 300, 150) self.setWindowTitle('Buttons') self.show()
def initUI(self): QToolTip.setFont(QFont('SansSerif', 10)) #Button btn = QPushButton('Start', self) btn.resize(btn.sizeHint()) btn.move(50, 50) #Title_path title_path = QLabel('Path/IP') self.titleEdit = QLineEdit() #Title_people title_people = QLabel('People') #Display self.lcd_people = QLCDNumber(self) btn.clicked.connect(self.buttonClicked) grid = QGridLayout() grid.setSpacing(10) grid.addWidget(self.lcd_people, 4, 0) grid.addWidget(title_people, 3, 0) grid.addWidget(btn, 2, 1) grid.addWidget(title_path, 1, 0) grid.addWidget(self.titleEdit, 1, 1) self.setLayout(grid) self.setGeometry(300, 300, 300, 200) self.setWindowTitle('Demo') self.show()
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()
def initUI(self): #1 先创建滑块和 LCD 部件 lcd = QLCDNumber(self) slider = QSlider(Qt.Horizontal, self) slider.setMaximum(1000) lcd.display(666) slider.setValue(666) #2 通过QVboxLayout来设置布局 vBox = QVBoxLayout() vBox.addWidget(lcd) vBox.addWidget(slider) self.setLayout(vBox) #3 valueChanged()是Qslider的一个信号函数,只要slider的值发生改变,它就会发射一个信号,然后通过connect连接信号的接收部件,也就是lcd。 slider.valueChanged.connect(lcd.display) slider.setMinimumWidth(200) slider.setFixedHeight(60) style = "QSlider::groove:horizontal {border:1px solid #999999;height:10px;" \ "background-color:#666666;margin:2px 0;}" \ "QSlider::handle:horizontal {background-color:#ff0000;border:1px solid #797979;" \ "width:50px;margin:-20px;border-radius:25px;}" \ slider.setStyleSheet(style) #self.setGeometry(0,0,800,480) self.setWindowTitle("拖动滑块LCD显示")
def setupGrid(self, wid): title = QLabel('Title') author = QLabel('Author') review = QLabel('Review') titleEdit = QLineEdit() authorEdit = QLineEdit() reviewEdit = QTextEdit() grid = QGridLayout() grid.setSpacing(10) grid.addWidget(title, 1, 0) grid.addWidget(titleEdit, 1, 1) grid.addWidget(author, 2, 0) grid.addWidget(authorEdit, 2, 1) grid.addWidget(review, 3, 0) grid.addWidget(reviewEdit, 3, 1, 5, 1) lcd = QLCDNumber(self) sld = QSlider(Qt.Horizontal, self) vbox = QVBoxLayout() vbox.addWidget(lcd) vbox.addWidget(sld) grid.addLayout(vbox, 8, 0, 5, 2) sld.valueChanged.connect(lcd.display) wid.setLayout(grid)
def initUI(self): #布局问题:https://blog.csdn.net/zhulove86/article/details/52563298 mainlayout = QVBoxLayout() lcd = QLCDNumber(self) # LCD数字显示 #sld = QSlider(Qt.Horizontal, self) # 水平滑动 screen = QVBoxLayout() # 垂直布局,对应QHBoxLayout水平布局 screen.addWidget(lcd) #vbox.addWidget(sld) #sld.valueChanged.connect(lcd.display) grid = QGridLayout() mainlayout.addLayout(screen) mainlayout.addLayout(grid) #screen和grid前后是有差别的 self.setLayout(mainlayout) # self.xxx设置最基本的布局 names = ['Cls', 'Bck', '', 'Close', '7', '8', '9', '/', '4', '5', '6', '*', '1', '2', '3', '-', '0', '.', '=', '+'] positions = [(i, j) for i in range(5) for j in range(4)] for name, position in zip(names, positions): if name == '': continue else: button = QPushButton(name) grid.addWidget(button, *position) self.setGeometry(300, 300, 250, 350) self.setWindowTitle('计算器') self.show()
def __build_lcd_number_widget(self): """Build a LCD Number widget.""" lcdnumber = QLCDNumber(self) lcdnumber.setSegmentStyle(QLCDNumber.Filled) lcdnumber.setFixedHeight(40) lcdnumber.setFrameStyle(QFrame.NoFrame) return lcdnumber