def setDefaultUi(self): self.version = self.findChild(QtWidgets.QLabel, 'version') self.version.setText("Mary 1.0.04") self.micButton = self.findChild(QtWidgets.QPushButton, 'micButton') self.Kelime_Label = self.findChild(QtWidgets.QLabel, 'Kelime_Label') self.Yanit_Label = self.findChild(QtWidgets.QLabel, 'Yanit_Label') self.Tip_Label = self.findChild(QtWidgets.QLabel, 'Tip_Label') self.Yanit_Layout = self.findChild(QtWidgets.QLayout, 'horizontalLayout_2') self.Image_Label = self.findChild(QtWidgets.QLabel, 'Image_Label') self.sitelink1 = self.findChild(QtWidgets.QLabel, 'sitelink1') self.sitelink2 = self.findChild(QtWidgets.QLabel, 'sitelink2') self.sitelink3 = self.findChild(QtWidgets.QLabel, 'sitelink3') self.sitebaslik1 = self.findChild(QtWidgets.QLabel, 'sitebaslik1') self.sitebaslik2 = self.findChild(QtWidgets.QLabel, 'sitebaslik2') self.sitebaslik3 = self.findChild(QtWidgets.QLabel, 'sitebaslik3') self.sitebaslik1.setOpenExternalLinks(True) self.sitebaslik2.setOpenExternalLinks(True) self.sitebaslik3.setOpenExternalLinks(True) self.siteaciklama1 = self.findChild(QtWidgets.QLabel, 'siteaciklama1') self.siteaciklama2 = self.findChild(QtWidgets.QLabel, 'siteaciklama2') self.siteaciklama3 = self.findChild(QtWidgets.QLabel, 'siteaciklama3') self.web_sonuc1 = self.findChild(QtWidgets.QLayout, 'web_sonuc1') self.web_sonuc2 = self.findChild(QtWidgets.QLayout, 'web_sonuc2') self.web_sonuc3 = self.findChild(QtWidgets.QLayout, 'web_sonuc3') self.web_sonuc1.setSpacing(0) self.web_sonuc2.setSpacing(0) self.web_sonuc3.setSpacing(0) self.web_sonuc1.setContentsMargins(0, 0, 0, 0) self.web_sonuc2.setContentsMargins(0, 0, 0, 0) self.web_sonuc3.setContentsMargins(0, 0, 0, 0) self.micButton.clicked.connect(self.micButtonPressed) self.setWindowIcon(QtGui.QIcon('image/mary.png')) self.animasyon = False self.ttsIptal = False self.listenAktif = False self.micButtonClickable = True self.Image_Label.show() self.aktifThreadler = 0 self.dosyakonumu = getcwd() self.soundPlayer = QtMultimedia.QMediaPlayer() self.soundPlayer.stateChanged.connect(self.soundPlayerState) #Tray icon self.tray_icon = QtWidgets.QSystemTrayIcon(self) self.tray_icon.setIcon(QtGui.QIcon("image/mary.png")) self.tray_icon.activated.connect(self.trayDoubleClick) show_action = QtWidgets.QAction("Göster", self) quit_action = QtWidgets.QAction("Çıkış yap", self) show_action.triggered.connect(self.show) quit_action.triggered.connect(self.closeApp) tray_menu = QtWidgets.QMenu() tray_menu.addAction(show_action) tray_menu.addAction(quit_action) self.tray_icon.setContextMenu(tray_menu) self.tray_icon.show() for i in range(10): self.dosyakonumu = self.dosyakonumu.replace("\\", "/") i = "border-image: url('{}/image/background.png');".format( self.dosyakonumu) stylesheet = "#centralwidget{" + i + "}" self.setStyleSheet(stylesheet) self.micButton.setStyleSheet( "border-image: url('{}/image/mic_1.png');".format( self.dosyakonumu)) self.yapilanislem = "" self.backgroundListen = True self.voiceEngine = ResponsiveVoice(lang=ResponsiveVoice.TURKISH, gender=ResponsiveVoice.FEMALE, pitch=0.52, rate=0.53, key="8FCWWns8", vol=0.97) threading.Thread(target=self.sesanimasyon, daemon=True).start() threading.Thread(target=self.background, daemon=True).start() self.db = Veritabani() if self.db.ad() == "": self.yapilanislem = "ilkacilis" threading.Thread(target=self.ilkCalistirma, daemon=True).start()
def playVoice(self): print('playing ' + self.sender().objectName()) sound = QtMultimedia.QSound(self.sender().objectName()) # 取得文件名 sound.play() loop = QEventLoop() loop.exec()
def setup_ui(self, MainWindow): MainWindow.setObjectName("KnockOutMachine") self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.main_picture = QtWidgets.QLabel(self.centralwidget) self.pixmap = QtGui.QPixmap("display/main_menu.png") self.scaledPixmap = self.pixmap.scaled(900, 900, QtCore.Qt.KeepAspectRatio) self.main_picture.setPixmap(self.scaledPixmap) self.pictures = QtWidgets.QLabel() self.pictures.setObjectName("pictures") self.pictures.setAlignment(QtCore.Qt.AlignCenter) self.pictures.setMinimumSize(500, 500) self.pictures.hide() self.player = QtMultimedia.QMediaPlayer(None, QMediaPlayer.VideoSurface) self.video_frame = QVideoWidget() self.video_frame.resize(960, 540) self.video_frame.hide() palette = QtGui.QPalette() palette.setColor(QtGui.QPalette.Text, QtCore.Qt.white) mfont = QtGui.QFont("Times", 80, QtGui.QFont.Bold) self.messages = QtWidgets.QLineEdit(self.centralwidget) self.messages.setObjectName("messages") self.messages.setAlignment(QtCore.Qt.AlignCenter) self.messages.setPalette(palette) self.messages.setReadOnly(True) self.messages.setFont(mfont) self.messages.setFixedSize(1400, 200) self.messages.hide() self.model = QtGui.QStandardItemModel(self.centralwidget) tableFont = QtGui.QFont("Times", 16) self.tableview = QtWidgets.QTableView(self.centralwidget) self.tableview.setObjectName("tableView") self.tableview.setSizeAdjustPolicy(QtWidgets.QAbstractScrollArea.AdjustToContents) self.tableview.setMaximumWidth(500) self.tableview.setMaximumHeight(900) self.tableview.verticalHeader().setDefaultSectionSize(85) self.tableview.horizontalHeader().setSectionResizeMode(QtWidgets.QHeaderView.ResizeToContents) self.tableview.setFont(tableFont) self.tableview.setModel(self.model) self.tableview.hide() self.input_window = QtWidgets.QWidget() self.input_window.setWindowTitle("Bitte Namen eingeben") self.input_window.resize(300, 100) self.input_window.move(850, 820) # self.input_window.setWindowFlags( # QtCore.Qt.Window | QtCore.Qt.CustomizeWindowHint | QtCore.Qt.WindowStaysOnTopHint) self.input_window.setWindowFlags(QtCore.Qt.WindowStaysOnTopHint) self.input_layout = QtWidgets.QFormLayout() self.input_dialogue = QtWidgets.QLineEdit(self.centralwidget) self.input_dialogue.setMaxLength(30) buttonFont = QtGui.QFont("Times", 16, QtGui.QFont.Bold) self.startButton = QtWidgets.QPushButton(self.centralwidget) self.startButton.setFixedSize(191, 71) self.startButton.setFont(buttonFont) self.startButton.setObjectName("startButton") self.startButton.clicked.connect(lambda: self.on_start_button_clicked()) self.inputButton = QtWidgets.QPushButton(self.centralwidget) self.inputButton.setObjectName("inputButton") self.inputButton.resize(self.inputButton.sizeHint()) self.inputButton.setDisabled(True) self.highscoreButton = QtWidgets.QPushButton(self.centralwidget) self.highscoreButton.setFont(buttonFont) self.highscoreButton.setObjectName("highscoreButton") self.highscoreButton.setFixedSize(191, 71) self.highscoreButton.clicked.connect(lambda: self.on_high_score_button_clicked()) self.cancelTimerButton = QtWidgets.QPushButton(self.centralwidget) self.cancelTimerButton.setFont(buttonFont) self.cancelTimerButton.setObjectName("cancelTimerButton") self.cancelTimerButton.setFixedSize(191, 71) self.cancelTimerButton.clicked.connect(lambda: self.exit_timer_function()) self.cancelTimerButton.hide() self.cancelScoreButton = QtWidgets.QPushButton(self.centralwidget) self.cancelScoreButton.setFont(buttonFont) self.cancelScoreButton.setObjectName("cancelScoreButton") self.cancelScoreButton.setFixedSize(191, 71) self.cancelScoreButton.clicked.connect(lambda: self.exit_score_function()) self.cancelScoreButton.hide() self.lcdCounter = QtWidgets.QLCDNumber(self.centralwidget) self.lcdCounter.setEnabled(False) self.lcdPalette = self.lcdCounter.palette() self.lcdCounter.setFixedSize(1350, 750) self.lcdCounter.setSmallDecimalPoint(False) self.lcdCounter.setDigitCount(5) self.lcdCounter.setObjectName("lcdCounter") self.lcdCounter.display("00.00") self.lcdCounter.hide() self.glass_not_set_timer, self.glass_set_timer = QtCore.QTimer(), QtCore.QTimer() self.glass_set_timer.setSingleShot(True) self.glass_set_timer.setInterval(100) self.glass_set_timer.timeout.connect(self.glass_set) self.glass_not_set_timer.setSingleShot(True) self.glass_not_set_timer.setInterval(100) self.glass_not_set_timer.timeout.connect(self.glass_not_set) self.vboxPictures = QtWidgets.QVBoxLayout() self.vboxPictures.addWidget(self.main_picture, 0, QtCore.Qt.AlignCenter) self.vboxPictures.addWidget(self.lcdCounter, 0, QtCore.Qt.AlignCenter) self.vboxPictures.addWidget(self.messages, 0, QtCore.Qt.AlignCenter) self.vboxPictures.addWidget(self.pictures, 1) self.vboxPictures.addWidget(self.video_frame, 0, QtCore.Qt.AlignCenter) self.vboxPictures.addWidget(self.tableview, 0, QtCore.Qt.AlignCenter) self.hboxButtons = QtWidgets.QHBoxLayout() self.hboxButtons.addWidget(self.startButton) self.hboxButtons.addWidget(self.highscoreButton) self.hboxButtons.addWidget(self.cancelTimerButton) self.hboxButtons.addWidget(self.cancelScoreButton) self.input_layout.addRow("", self.input_dialogue) self.input_layout.addRow("", self.inputButton) self.input_window.setLayout(self.input_layout) self.vbox = QtWidgets.QVBoxLayout() self.vbox.addLayout(self.vboxPictures) self.vbox.addStretch(1) self.vbox.addLayout(self.hboxButtons) self.vbox.addStretch(1) self.input_dialogue.textChanged.connect(self.enable_input_button) self.input_dialogue.returnPressed.connect(self.inputButton.click) self.inputButton.clicked.connect(lambda: self.update_scores(self.input_dialogue.text(), runTime)) self.inputButton.clicked.connect(lambda: self.input_window.close()) self.inputButton.clicked.connect(lambda: self.exit_timer_function()) self.centralwidget.setLayout(self.vbox) MainWindow.setCentralWidget(self.centralwidget) self.statusbar = QtWidgets.QStatusBar(MainWindow) self.statusbar.setObjectName("statusbar") MainWindow.setStatusBar(self.statusbar) locale.setlocale(locale.LC_ALL, '') self.retranslate_ui(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow)
def __init__(self): QtWidgets.QWidget.__init__(self) # use main_ui for window setup self.ui = threepio_ui.Ui_MainWindow() self.setStyleSheet(open('stylesheet.qss').read()) self.ui.setupUi(self) self.setWindowTitle("Threepio") # hide the close/minimize/fullscreen buttons self.setWindowFlags(QtCore.Qt.Window | QtCore.Qt.WindowTitleHint | QtCore.Qt.CustomizeWindowHint) # connect buttons self.ui.stripchart_speed_slider.valueChanged.connect(self.update_speed) # self.ui.speed_slower_radio.clicked.connect(self.update_speed) # self.ui.speed_default_radio.clicked.connect(self.update_speed) self.ui.actionInfo.triggered.connect(self.handle_credits) self.ui.actionScan.triggered.connect(self.handle_scan) self.ui.actionSurvey.triggered.connect(self.handle_survey) self.ui.actionSpectrum.triggered.connect(self.handle_spectrum) self.ui.actionDec.triggered.connect(self.dec_calibration) self.ui.actionRA.triggered.connect(self.ra_calibration) self.ui.actionNormal.triggered.connect(self.set_state_normal) self.ui.actionTesting.triggered.connect(self.set_state_testing) self.ui.actionLegacy.triggered.connect(self.legacy_mode) self.ui.chart_clear_button.clicked.connect(self.clear_stripchart) self.ui.chart_legacy_button.clicked.connect(self.legacy_mode) # DATAQ stuff self.tars = Tars(parent=self) self.tars.setup() self.tars.start() # clock self.clock = None self.set_time() # bleeps and bloops self.click_sound = QtMultimedia.QSoundEffect() url = QtCore.QUrl() self.click_sound.setSource(url.fromLocalFile("assets/beep5.wav")) self.click_sound.setVolume(0.5) self.click_sound.play() self.last_beep_time = 0.0 # initialize stripchart self.stripchart_series_a = QtChart.QLineSeries() self.stripchart_series_b = QtChart.QLineSeries() self.axis_y = QtChart.QValueAxis() self.chart = QtChart.QChart() self.ui.stripchart.setRenderHint(QtGui.QPainter.Antialiasing) pen = QtGui.QPen(QtGui.QColor(self.BLUE)) pen.setWidth(1) self.stripchart_series_a.setPen(pen) pen.setColor(QtGui.QColor(self.RED)) self.stripchart_series_b.setPen(pen) self.initialize_stripchart() self.update_speed() # establish observation self.observation = None # establish data array & most recent dec self.data = [] self.current_dec = 0.0 # run initial calibration self.load_dec_cal() # refresh timer self.timer = QtCore.QTimer(self) self.timer.timeout.connect(self.tick) # do everything self.timer.start(self.timer_rate) # set refresh rate
def initUI(self): # INITIALIZATION STEP 1: CREATE TIMER WIDGET # self.timerwidget = QtWidgets.QWidget(self) # # self.timerwidget.setObjectName("timerwidget") # # self.timer_label = QtWidgets.QLabel(self) #self.timerwidget self.timer_label.setGeometry(QtCore.QRect(1380, 720, 431, 271)) self.timer_label.setStyleSheet( "border-image: url('C:/Users/Owner/PycharmProjects/BF4 Deployment Timer/black timer background rev.jpg'); color: rgb(136, 204, 241)" ) font2 = QtGui.QFont() font2.setFamily("Agency FB") font2.setPointSize(38) self.timer_label.setFont(font2) self.timer_label.setTextFormat(QtCore.Qt.AutoText) self.timer_label.setObjectName("timerlabel") self.timer_label.setText('Awaiting Orders') self.timer_label.setAlignment(QtCore.Qt.AlignCenter) self.timer_label.setLayoutDirection(QtCore.Qt.RightToLeft) # timer_layout = QtWidgets.QVBoxLayout() # timer_layout.addWidget(self.timer_label) # self.setLayout(timer_layout) # INITIALIZATION STEP 2: LOAD AUDIO FILES self.url_AA1 = QtCore.QUrl.fromLocalFile( 'C:\\Users\\Owner\\PycharmProjects\\BF4 Deployment Timer\\sound\\friendly timers\\friendly AA r\\friendly aa pt1.mp3' ) self.AA1 = QtMultimedia.QMediaContent(self.url_AA1) self.AA1_player = QtMultimedia.QMediaPlayer() self.AA1_player.setMedia(self.AA1) self.url_AA2 = QtCore.QUrl.fromLocalFile( 'C:\\Users\\Owner\\PycharmProjects\\BF4 Deployment Timer\\sound\\friendly timers\\friendly AA r\\friendly aa pt2.mp3' ) self.AA2 = QtMultimedia.QMediaContent(self.url_AA2) self.AA2_player = QtMultimedia.QMediaPlayer() self.AA2_player.setMedia(self.AA2) self.url_AA3 = QtCore.QUrl.fromLocalFile( 'C:\\Users\\Owner\\PycharmProjects\\BF4 Deployment Timer\\sound\\friendly timers\\friendly AA r\\friendly aa pt3.mp3' ) self.AA3 = QtMultimedia.QMediaContent(self.url_AA3) self.AA3_player = QtMultimedia.QMediaPlayer() self.AA3_player.setMedia(self.AA3) self.url_AA4 = QtCore.QUrl.fromLocalFile( 'C:\\Users\\Owner\\PycharmProjects\\BF4 Deployment Timer\\sound\\friendly timers\\friendly AA r\\friendly aa pt4.mp3' ) self.AA4 = QtMultimedia.QMediaContent(self.url_AA4) self.AA4_player = QtMultimedia.QMediaPlayer() self.AA4_player.setMedia(self.AA4) # INITIALIZATION STEP 3: CREATE VEHICLE BUTTONS self.AA_button = QtWidgets.QPushButton(self) # create AA button self.AA_button.setGeometry(QtCore.QRect(1500, 300, 154, 93)) # create size of icon AA_icon = QtGui.QIcon() # create an icon object AA_icon.addPixmap(QtGui.QPixmap("vehicle icons/AA.jpg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) # give object a picture attribute self.AA_button.setIcon( AA_icon ) # assign the icon object (with pic) to the button's attribute property self.AA_button.setIconSize(QtCore.QSize(300, 300)) # set size of the button self.AA_button.setObjectName("AA_Icon") # name the button # self.AA_button.toggle() self.AA_button.clicked.connect( self.AA_click) # connect the button to the reaction event self.AA_button.clicked.connect(self.timer_start) # INITIALIZATION STEP 4: CREATE 'TIMER' OBJECT self.countdown = QtCore.QTimer() self.countdown.timeout.connect(self.print_timer) self.countdown.timeout.connect(self.AA_click)
def __init__(self, *args, **kwargs): # Setup widget QtWidgets.QWidget.__init__(self, *args, **kwargs) loader = UiLoader() loader.registerCustomWidget(QTableWidgetMetronome) loader.load(LocalPath('metronome.ui'), self) # # Setup initial values # self._externalTimerIndex = -1 self._MetronomeIndex = 0 self._MetronomeLoud = True self._TimerConnected = False # Perform autoconfig AutoConfig.__init__(self, autoconfig_name_key='metronome') # Empty array of emph buttons self._pushButtons_Click = [] # # Connect widgets! # # Metronome sound AudioFormat = QtMultimedia.QAudioFormat() AudioFormat.setChannelCount(1) AudioFormat.setSampleRate(44100) AudioFormat.setSampleSize(16) AudioFormat.setCodec("audio/pcm") AudioFormat.setByteOrder(QtMultimedia.QAudioFormat.LittleEndian) AudioFormat.setSampleType(QtMultimedia.QAudioFormat.SignedInt) self.MetronomeOutput = QtMultimedia.QAudioOutput(AudioFormat) self.MetronomeOutput.setVolume(1.0) self.MetronomeBuffer = QtCore.QBuffer() self.MetronomeDataSilent = QtCore.QByteArray() self.MetronomeDataQuiet = QtCore.QByteArray() self.MetronomeDataLoud = QtCore.QByteArray() self._make_click() # Metronome Flash timer self.MetronomeTimer = QtCore.QTimer() self.MetronomeTimer.setTimerType(QtCore.Qt.PreciseTimer) # Metronome MetronomeUnFlash timer self.MetronomeUnFlashTimer = QtCore.QTimer() self.MetronomeUnFlashTimer.setTimerType(QtCore.Qt.PreciseTimer) # Start / stop metronome self.comboBox_Metronome.currentIndexChanged.connect(self.MetronomeStartStop) # Spinboxes: if metronome is running, change speed / emphasis based on changes self.BPM_spinBox.setKeyboardTracking(False) self.BPM_spinBox.valueChanged.connect(self.MetronomeUpdate) self.Emph_spinBox.setKeyboardTracking(False) self.Emph_spinBox.valueChanged.connect(self.emphUpdate) # Build button array self.emphUpdate() self.spinBox_Skipped.setKeyboardTracking(False) self.spinBox_Skipped.valueChanged.connect(self.MetronomeUpdate) # Presets self.pushButton_Preset_1.clicked.connect(lambda: self.Preset(1)) self.pushButton_Preset_2.clicked.connect(lambda: self.Preset(2)) self.pushButton_Preset_5.clicked.connect(lambda: self.Preset(5)) self.pushButton_Preset_10.clicked.connect(lambda: self.Preset(10)) # Table mode self.tableWidgetMetronome.setColumnCount(4) self.tableWidgetMetronome.setRowCount(0) self.tableWidgetMetronome.setHorizontalHeaderLabels( ["Duration", "BPM", "Beats per measure", "Skipped"] ) self.tableWidgetMetronome.setFixedWidth()
def play_aud_dirc(self, file_name): url = QtCore.QUrl.fromLocalFile('.\\audio\\' + str(file_name) + '.wav') content = QtMultimedia.QMediaContent(url) self.player.setMedia(content) self.player.setVolume(self.volume) self.player.play()
def __init__(self, volume): self.volume = volume # self.file_path = file_path self.loop = asyncio.get_event_loop() self.player = QtMultimedia.QMediaPlayer() self.player2 = QtMultimedia.QMediaPlayer()