def on_loading(self, layout, gif_name="loader_white_green", set_text=True, size=40): from commun.utils.layout import clear_layout clear_layout(layout) from PyQt5.QtWidgets import QVBoxLayout, QLabel from PyQt5.Qt import Qt, QSize container_loader = QVBoxLayout() container_loader.addStretch(1) loader = QLabel() from PyQt5.QtGui import QMovie movie = QMovie("commun/assets/movie/{}.gif".format(gif_name)) movie.setScaledSize(QSize(size, size)) loader.setMovie(movie) loader.setFixedSize(size, size) movie.start() container_loader.addWidget(loader, alignment=Qt.AlignCenter | Qt.AlignVCenter) if set_text: label_loading = QLabel("Chargement...") from commun.constants.stylesheets import black_16_label_stylesheet label_loading.setStyleSheet(black_16_label_stylesheet) container_loader.addWidget(label_loading, alignment=Qt.AlignCenter | Qt.AlignVCenter) container_loader.addStretch(1) layout.addLayout(container_loader) self.setLayout(layout)
class StatusBarView(QStatusBar): """ The model of Navigation component """ def __init__(self, parent): super().__init__(parent) self.status_label = QLabel("", parent) self.status_label.setTextFormat(Qt.RichText) self.label_time = QLabel("", parent) self.combo_referential = QComboBox(parent) self.movie_loader = QMovie(":/icons/loader") self.label_loading = QLabel(parent) self.label_loading.setMovie(self.movie_loader) self.label_loading.setMaximumHeight(self.height()) self.movie_loader.setScaledSize(QSize(16, 16)) self.movie_loader.start() self.movie_loader.setPaused(True) self.addPermanentWidget(self.label_loading) self.addPermanentWidget(self.status_label, 2) self.addPermanentWidget(self.label_time) self.addPermanentWidget(self.combo_referential) def start_loading(self): self.movie_loader.setPaused(False) def stop_loading(self): self.movie_loader.setPaused(True)
def setupUi(self): """ 위젯을 화면 위에 올리기 :return: """ # contralWidget 정의 :: 정의 안하면 안보임 centralWidget = QtWidgets.QWidget(self) self.setCentralWidget(centralWidget) # FramelessWindowHint :: 창의 윗부분이 사라짐(닫기, 최소화 등등 있는 것) # WindowStaysOnTopHint :: 화면 항상 위에 있어라. 아래 if문을 만족하면 flags = QtCore.Qt.WindowFlags( QtCore.Qt.FramelessWindowHint | QtCore.Qt.WindowStaysOnTopHint if self.on_top else QtCore.Qt. FramelessWindowHint) # Wa_ :: 창 배경을 깨끗하고 맑고 투명하게 self.setWindowFlags(flags) self.setAttribute(QtCore.Qt.WA_NoSystemBackground, True) self.setAttribute(QtCore.Qt.WA_TranslucentBackground, True) label = QtWidgets.QLabel(centralWidget) # 만든 contralWidget을 label에 올리기 movie = QMovie(self.img_path) # 위치확인 label.setMovie(movie) # 라벨셋팅 movie.start() movie.stop() # 크기를 구하기위해 한번 켰다끄기 #사이즈 정의 w = int(movie.frameRect().size().width() * self.size) h = int(movie.frameRect().size().height() * self.size) movie.setScaledSize(QtCore.QSize(w, h)) movie.start() # 크기 위치 정의 self.setGeometry(self.xy[0], self.xy[1], w, h)
def create_pic(self): if not os.path.exists(self.path): QMessageBox.warning(self, '警告', '请先载入数据!') return if os.path.exists(self.config_widget.mask_path_line.text()): image = Image.open(self.config_widget.mask_path_line.text()) self.mask = np.array(image) self.pic_show.clear() movie = QMovie(':/source/loading.gif') movie.setScaledSize(self.pic_show.size()) self.pic_show.setMovie(movie) movie.start() font_path = self.config_widget.font_path_line.text() max_words = self.config_widget.max_word.value() background_color = self.config_widget.background_color color_random = self.config_widget.color_random.value() min_font_size = int(self.config_widget.min_size.text()) max_font_size = int(self.config_widget.max_size.text()) self.pic_thread = CreateThread(self.path, font_path, self.margin, self.width, self.height, max_words, background_color, self.mask, color_random, min_font_size, max_font_size) self.pic_thread.finish_signal.connect(self.set_pixmap) self.pic_thread.start() self.make_cloud.setEnabled(False) self.make_cloud.setText('正在生成') self.load_text.setEnabled(False)
def login(self): myMovie = QMovie("icons/loading.gif") myMovie.setScaledSize(QSize(18, 18)) self.loginMsg.setMovie(myMovie) myMovie.start() coreLogic = Core() args = {} args["userid"] = self.userIDTxt.text() args["password"] = self.passTxt.text() args["entity"] = self.sysChoice.currentText() result, msg = coreLogic.login(args) if result == True: # update the subuser coreLogic.getSubUsers() # update parent window = login and session message self.parent().checkLogin() self.parent().initialiseSubuserCompleter() # show a message alert = QMessageBox() alert.setText("You have successfully logged in!") alert.exec_() # close login gui self.closingThread = threading.Thread(target=self.__closeGui).start() else: self.loginMsg.setMovie(None) self.loginMsg.setText(msg) self.loginMsg.setStyleSheet("color:red")
def handle_default_scan_click(self): """ Handle scan button action event. Responsible for enabling waiting bar """ label = QLabel(self) label.setText("SEARCHING") self.setDisabled(True) label_width = 500 label_height = 100 label_x_pos = self.size().width() // 2 - label_width // 2 label_y_pos = self.size().height() // 2 - label_height // 2 movie = QMovie("ajax-loader.gif") label.setGeometry(label_x_pos, label_y_pos, label_width, label_height) label.setFrameStyle(Qt.FramelessWindowHint) label.setMovie(movie) label.show() movie.setScaledSize(label.size()) movie.start() self.sig.connect(self.search_thread.on_event) self.sig.emit("search") self.search_thread.start() self.search_thread.sig1.connect(self.handle_processed_paths)
def shownextscreen(): mainscreen.hide() bgimg = QMovie("res/bgexplosion.gif") ui_screen.background.autoFillBackground() ui_screen.background.setMovie(bgimg) bgimg.setScaledSize(ui_screen.background.size()) bgimg.start() solver_screen.show()
def __init__(self): super().__init__() self.resize(100, 100) pixmap = QMovie('resources/assets/images/loading-small.gif') pixmap.setScaledSize(self.size()) self.setMovie(pixmap) self.setCursor(QCursor(Qt.WaitCursor)) pixmap.start()
def showabout(): mainscreen.hide() bgimg = QMovie('res/aboutbg.gif') ui_about.background.autoFillBackground() ui_about.background.setMovie(bgimg) bgimg.setScaledSize(ui_about.background.size()) bgimg.start() about_screen.show()
def game_win(self): self.ui.score.hide() self.ui.pushButton.hide() self.ui.cardDobor.hide() self.ui.lcdNumber.hide() movie = QMovie("firework.gif") movie.setScaledSize(QtCore.QSize(self.width(), self.height())) self.ui.label.setMovie(movie) movie.start() self.show_popup("Win")
def __setup_code_generation_progress_loader(self): widget_movie = QMovie("assets/loader.gif") widget_movie.setScaledSize(QSize(64, 64)) self.widget_progress = widget_movie self.label.setMovie(widget_movie) self.label.show() widget_movie.start() widget_movie.stop()
def __init__(self, parent=None): super(loading, self).__init__() loadUi('ui/loading.ui', self) self.timer = QTimer(self) self.timer.timeout.connect(self.start) self.timer.start(2000) movie = QMovie("ui/gif2.gif") self.LGif.setMovie(movie) movie.setScaledSize(QSize(100, 100)) movie.start() self.LLabel.setText("Yükleniyor...")
def __init__(self, parent=None): super(Widget, self).__init__(parent) self.setWindowTitle("Authorisatie programma.") self.setWindowIcon(QIcon('./images/logos/logo.jpg')) self.setFont(QFont('Arial', 10)) self.Accountnummer = QLabel() accEdit = QLineEdit('1') accEdit.setFixedWidth(100) accEdit.setFont(QFont("Arial",10)) accEdit.textChanged.connect(self.accChanged) reg_ex = QRegExp('^[1]{1}[0-9]{8}$') input_validator = QRegExpValidator(reg_ex, accEdit) accEdit.setValidator(input_validator) grid = QGridLayout() grid.setSpacing(20) pyqt = QLabel() movie = QMovie('./images/logos/pyqt.gif') pyqt.setMovie(movie) movie.setScaledSize(QSize(240,80)) movie.start() grid.addWidget(pyqt, 0 ,0, 1, 2) logo = QLabel() pixmap = QPixmap('./images/logos/logo.jpg') logo.setPixmap(pixmap) grid.addWidget(logo , 0, 2, 1, 1, Qt.AlignRight) grid.addWidget(QLabel('Accountnummer'), 1, 1) grid.addWidget(accEdit, 1, 2) cancelBtn = QPushButton('Sluiten') cancelBtn.clicked.connect(lambda: windowSluit(self, m_email)) applyBtn = QPushButton('Zoeken') applyBtn.clicked.connect(self.accept) grid.addWidget(applyBtn, 2, 2) applyBtn.setFont(QFont("Arial",10)) applyBtn.setFixedWidth(100) applyBtn.setStyleSheet("color: black; background-color: gainsboro") grid.addWidget(cancelBtn, 2, 1) cancelBtn.setFont(QFont("Arial",10)) cancelBtn.setFixedWidth(100) cancelBtn.setStyleSheet("color: black; background-color: gainsboro") grid.addWidget(QLabel('\u00A9 2017 all rights reserved [email protected]'), 3, 0, 1, 3, Qt.AlignCenter) self.setLayout(grid) self.setGeometry(500, 400, 150, 150)
def getRandomGif(self): directories = os.listdir( CfgService.get(CfgKey.PAGE_CAPTUREPHOTO_LOADING_GIF_FOLDER)) numberPictures = len(directories) pictureIndex = random.randint(0, numberPictures - 1) gif = QMovie( CfgService.get(CfgKey.PAGE_CAPTUREPHOTO_LOADING_GIF_FOLDER) + "/" + directories[pictureIndex]) gifSize = gif.scaledSize() gifScaleFactor = self.windowSize.height() / gifSize.height() gif.setScaledSize( QSize(gifSize.width() * gifScaleFactor, gifSize.height() * gifScaleFactor)) return gif
class ShowMovie(QLabel): def __init__(self,width,height,parent): super(ShowMovie,self).__init__() self.setParent(parent) self.setGeometry(width/2 - 100, height / 2 - 100, 200, 200) self.movie = QMovie("./pic/loading.gif") self.movie.setScaledSize(self.size()) self.setMovie(self.movie) def showMovie(self): self.show() self.movie.start() def cloMovie(self): self.movie.stop() self.close()
def getQMovie(self): """ Returns: Qmovie object containing the animation. """ if not self.contents == "animation": return None if self.qdata is None and not self.error: root, file = self.path img = QMovie(os.path.join(root, file)) if not img.isValid(): self.error = "failed to load: " + img.lastError() return None img.setScaledSize(QSize(*self.fullsize)) self.qdata = img return self.qdata
class PopupExpulsar(QWidget): """ Popup mostrado al expulsar un jugador de la nave """ def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.image_size = (480, 270) self.__init_ui() self.__connect_events() self.__retranslate_ui() def __init_ui(self): # Main widget declaration self.gif_label = QLabel(self) self.setMinimumSize(*(self.image_size)) # Text self.text_label = QLabel(self) # Add to layout self.main_vertical_layout = QVBoxLayout(self) self.main_vertical_layout.addStretch(1) self.main_vertical_layout.addWidget(self.text_label) self.main_vertical_layout.addStretch(3) def __retranslate_ui(self): self.setWindowTitle("DCCrew DemoCratiCa - Ejection") # Text self.text_label.setStyleSheet(""" color: white; font-size: 28px; """) self.text_label.setFont(QFont("Helvetica")) self.text_label.setAlignment(Qt.AlignCenter) # Gif path_gif = path.join("assets", "expulsado.gif") self.gif = QMovie(path_gif) self.gif.setSpeed(200) self.gif.setScaledSize(QSize(*self.image_size)) self.gif_label.setMovie(self.gif) self.gif_label.setMinimumSize(QSize(*(self.image_size))) def __connect_events(self): pass def actualizar_label(self, username): self.text_label.setText(f"{username} ha sido expulsado...") self.gif.start()
def __init__(self, cover_path, cover_title, video_path, video_hash, *args, **kwargs): super(CoverLabel, self).__init__(*args, **kwargs) self.setContextMenuPolicy(QtCore.Qt.CustomContextMenu) self.customContextMenuRequested.connect(self.rightMenuShow) # 开放右键策略 self.setCursor(Qt.PointingHandCursor) self.cover_path = cover_path # self.setScaledContents(True) # self.setMinimumSize(Const.GL_image_weight, Const.GL_image_height) # self.setMaximumSize(Const.GL_image_weight, Const.GL_image_height) self.video_hash = video_hash self.cover_title = cover_title self.video_path = video_path if not (os.path.exists(cover_path)): print("the img is not exist : "+cover_path) cover_path = "cache/coverimg/default.jpg" img = Image.open("cache/coverimg/default.jpg") try: img = Image.open(cover_path) except Exception as e: print("图片已损坏 : "+str(e)) os.remove(cover_path) # 将下载状态置为1 sql = "UPDATE video SET is_download = ? WHERE hash = ?" SqlUtils.update_video(sql, (1,video_hash)) cover_path = "cache/coverimg/default.jpg" img_height = Const.GL_image_weight / img.size[0] * img.size[1] if cover_path.endswith('.gif'): movie = QMovie(cover_path) # movie.setScaledSize(self.size()) movie.setScaledSize(QSize(Const.GL_image_weight, img_height)) self.setMinimumSize(Const.GL_image_weight, img_height) self.setMaximumSize(Const.GL_image_weight, img_height) # self.parent().setMaximumSize(GL_widget_weight, img_height+100) # self.parent().setMaximumSize(GL_widget_weight, img_height+100) self.parent().setFixedWidth(Const.GL_widget_weight) self.setMovie(movie) movie.start() else: cover_img = QPixmap(cover_path) self.setPixmap(cover_img.scaled(Const.GL_image_weight, img_height)) self.setMinimumSize(Const.GL_image_weight, img_height) self.setMaximumSize(Const.GL_image_weight, img_height) # self.parent().setMaximumSize(GL_widget_weight, img_height+100) # self.parent().setMaximumSize(GL_widget_weight, img_height+100) self.parent().setFixedWidth(Const.GL_widget_weight)
class LoadingItem(QLabel): def __init__(self): super(LoadingItem, self).__init__() self.movie = QMovie(resources.IMAGES['loading']) self.setMovie(self.movie) self.movie.setScaledSize(QSize(16, 16)) self.movie.start() def add_item_to_tree(self, folder, tree, item_type=None, parent=None): if item_type is None: item = QTreeWidgetItem() item.setText(0, (_translate("LoadingItem", " LOADING: '%s'") % folder)) else: item = item_type(parent, ( _translate("LoadingItem", " LOADING: '%s'") % folder), folder) tree.addTopLevelItem(item) tree.setItemWidget(item, 0, self) return item
class ClockWindow(object): def __init__(self, MainWindow, width, height): MainWindow.setObjectName("MainWindow") dim = MainWindow.size() self.WIDTH = width self.HEIGHT = height self.RATIO = self.WIDTH / self.HEIGHT self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.label = QtWidgets.QLabel(self.centralwidget) self.label.setGeometry(QtCore.QRect(0, 0, self.WIDTH, self.HEIGHT)) self.label.setObjectName("label") self.display_text = QtWidgets.QLabel(self.centralwidget) self.display_text.setObjectName("display_text") self.display_text.setFont(QFont('Helvetica', 30)) self.display_text.setStyleSheet( "background-color: black; color: green") self.set_display_text("Loading...", "green") MainWindow.setCentralWidget(self.centralwidget) def update_gif(self, gif_path): self.movie = QMovie(gif_path) self.label.setMovie(self.movie) self.movie.start() self.movie.setScaledSize(self.label.size()) def set_display_text(self, text, color): self.display_text.setStyleSheet( f"background-color: black; color: {color}") self.display_text.setText(text) self.display_text.move( self.WIDTH / 2 - self._label_width(self.display_text) / 2, self.HEIGHT - self._label_height(self.display_text)) self.display_text.setFixedWidth(self._label_width(self.display_text)) def _label_width(self, label): return label.fontMetrics().boundingRect(label.text()).width() def _label_height(self, label): return label.fontMetrics().boundingRect(label.text()).height()
def show_slides(self): try: i, img_object = self._result.get(True, 5) if isinstance(img_object, QMediaContent): self.MediaPlayer.setMedia(img_object) except Empty: self.timer.stop() return while i != self._next: self._result.put((i, img_object), False) i, img_object = self._result.get() if isinstance(img_object, QMediaContent): self.MediaPlayer.setMedia(img_object) if isinstance(img_object, QMediaContent): # If a movie # self.MediaPlayer.setMedia(img_object) self.layout.setCurrentWidget(self.VideoWidget) self.MediaPlayer.play() elif isinstance(img_object, QMovie): # If a gif size = img_object.scaledSize() img_object = QMovie(img_object.fileName()) img_object.setCacheMode(QMovie.CacheAll) self._gif = img_object img_object.frameChanged.connect(self.gif_frame_changed) self.SlideShowWidget.setMovie(img_object) size.scale(self.SlideShowWidget.size(), Qt.KeepAspectRatio) img_object.setScaledSize(size) img_object.setSpeed(int(self.rate * 100)) self.layout.setCurrentWidget(self.SlideShowWidget) # self.change_playspeed(self.rate) img_object.start() else: # If a picture # print(img_object.size()) self.SlideShowWidget.setPixmap( img_object.scaled(self.SlideShowWidget.size(), Qt.KeepAspectRatio)) self.timer.start(self.delay / self.rate) self.layout.setCurrentWidget(self.SlideShowWidget) self._next += 1 self.threading(self.maxqsize - self._result.qsize())
def setPath(self, path=None): if not path: path = self.imagePathEdit.text() if path.endswith(".png"): self.label.setFixedWidth(800) else: self.label.setFixedSize(300, 300) self.imagePathEdit.setText(path) if os.path.exists(path): if path.endswith(".gif"): # print(path) gif = QMovie(path) gif.setScaledSize(QSize(300, 300)) self.label.setMovie(gif) gif.start() else: image = QtGui.QPixmap(path).scaled(self.label.width(), self.label.height(), Qt.KeepAspectRatio) self.label.setPixmap(image)
class LoadingScreen(QDialog): def __init__(self, parent, file_path, text): """Initialise the loading screen Arguments: parent {QObject} -- The parent QObject file_path {str} -- Path to file of loading GIF text {str} -- Text to be shown on the loading screen """ super().__init__(parent) self.file = file_path self.text = text self.setWindowFlag(Qt.FramelessWindowHint) self.setFixedSize(200, 200) self.setModal(True) self.init_UI() def init_UI(self): """Initialise the UI by loading the GIF and adding the text label """ vbox = QVBoxLayout() vbox.setAlignment(Qt.AlignHCenter) self.movie_screen = QLabel(self) self.movie_screen.setFixedSize(50, 50) self.movie = QMovie(self.file, QByteArray(), self) self.movie.setScaledSize(self.movie_screen.size()) self.movie.setCacheMode(QMovie.CacheAll) self.movie.setSpeed(100) self.movie_screen.setMovie(self.movie) self.movie.start() self.movie.loopCount() self.loading = QLabel(self.text) self.loading.setAlignment(Qt.AlignCenter) vbox.addStretch(2) vbox.addWidget(self.movie_screen, Qt.AlignCenter) vbox.addSpacing(10) vbox.addWidget(self.loading, Qt.AlignHCenter) vbox.addStretch(1) self.setLayout(vbox)
def setupUi(self): centralWidget = QtWidgets.QWidget(self) self.setCentralWidget(centralWidget) flags = QtCore.Qt.WindowFlags(QtCore.Qt.FramelessWindowHint | QtCore.Qt.WindowStaysOnTopHint if self.on_top else QtCore.Qt.FramelessWindowHint) self.setWindowFlags(flags) self.setAttribute(QtCore.Qt.WA_NoSystemBackground, True) self.setAttribute(QtCore.Qt.WA_TranslucentBackground, True) label = QtWidgets.QLabel(centralWidget) movie = QMovie(self.img_path) label.setMovie(movie) movie.start() movie.stop() w = int(movie.frameRect().size().width() * self.size) h = int(movie.frameRect().size().height() * self.size) movie.setScaledSize(QtCore.QSize(w, h)) movie.start() self.setGeometry(self.xy[0], self.xy[1], w, h)
def show_image(self, row, column): imageId = self.imageListTable.item(row, 0).text() # set new active image id self.active_image_id = imageId # Removes a video from screen if shown: self.videoPlayer.stop() self.videoField.hide() # show active image self.show_active_image() # show image and additional data self.imageNameField.setText(f"{IMAGE_PATH_DICT[imageId]['name']}") self.imageParamsField.setText( f"HxW: {IMAGE_PATH_DICT[imageId]['additional_attrs']['height']}px" + f" x {IMAGE_PATH_DICT[imageId]['additional_attrs']['width']}px") # Shows animated images if IMAGE_PATH_DICT[imageId]["name"].lower().endswith("gif"): gif = QMovie(IMAGE_PATH_DICT[imageId]["full_path"]) gifSize = QSize(*self.smooth_gif_resize( IMAGE_PATH_DICT[imageId]["full_path"], 600, 600)) gif.setScaledSize(gifSize) self.imageField.setMovie(gif) gif.start() # Shows static images else: self.imageField.setPixmap( QPixmap(IMAGE_PATH_DICT[imageId]["full_path"]).scaled( 600, 600, Qt.KeepAspectRatio, Qt.SmoothTransformation)) if column == self.COLUMNS_DICT["Dup"]["index"]: self.duplicateWindow = DuplicateWindow( image_data=IMAGE_PATH_DICT[imageId], raw_id=imageId) if imageId not in self.duplicateRefs.keys(): self.duplicateRefs[imageId] = self.duplicateWindow self.duplicateWindow.show() self.duplicateWindow.closeTrigger.connect(self.delete_reference)
def get_path_info(self): item = self.ui.list_widget.currentItem() litem = item.listWidget().itemWidget(item) _file = litem.title.text() _path = litem.desc.text() self.short_title(_file) self.set_data(_path) try: img = tuple(self.pkg.api_icons("image")) video = tuple(self.pkg.api_icons("video")) audio = tuple(self.pkg.api_icons("audio")) except TypeError: img = ".jpg" video = ".mp4" audio = ".mp3" if _file.endswith(".gif"): self.hide_video() movie = QMovie(_path) movie.setScaledSize(QSize(300, 200)) self.ui.image.setMovie(movie) movie.start() elif _file.endswith(img): self.hide_video() self.ui.image.setPixmap(self.pkg.set_image(item.icon(), size=300)) elif _file.endswith(video) or _file.endswith(audio): self.ui.image.setPixmap(self.pkg.set_image(item.icon(), size=150)) self.video_player.set_media(_path) self.show_video() else: self.hide_video() self.ui.image.setPixmap(self.pkg.set_image(item.icon(), size=150))
def ShowGameReport(self): # clear the right side of the window and then construct it again try: self.right_scroll_area.deleteLater() except Exception: pass self.right_scroll_area = QScrollArea() self.right_scroll_widget = QWidget() self.right_scroll_widget.setMinimumSize(800, 350 * len(self.game_report_content)) scroll_layout = QVBoxLayout() scroll_layout.setAlignment(Qt.AlignHCenter) self.right_scroll_widget.setLayout(scroll_layout) self.right_scroll_area.setWidget(self.right_scroll_widget) self.right_layout.addWidget(self.right_scroll_area) # put items to the right side of the window right_label = [QLabel() for i in range(len(self.game_report_content))] for idx, item in enumerate(self.game_report_content): if item is 'gif': gif = QMovie("temp_gif/{}.gif".format(idx)) gif.setSpeed(125) # the speed of gif needs some fine tuning, 125 means 1.25 times original speed # the speed gets slower when using original speed gif.setScaledSize(QSize(600, 357)) right_label[idx].setMovie(gif) gif.start() elif item is 0: # this might happen when there's an advertisement image, see method GetNewsDetails continue else: right_label[idx].setText(item) right_label[idx].setFont(QFont("Microsoft YaHei", 12)) right_label[idx].setWordWrap(True) right_label[idx].setAlignment(Qt.AlignCenter) scroll_layout.addWidget(right_label[idx]) scroll_layout.addStretch(1)
def wait(self): self.set_up() self.socket = Server(self.__board_size, self.__is_player_first, self.is_new, self.load_data) self.socket.start() self.server_timer = QBasicTimer() self.server_timer.start(500, self) self.__current_title = "Waiting For Second Player To Connect\n" \ f"(Your IP: {self.socket.ip})" label = QLabel(self) corgi = QMovie('images/BigCorgi.gif') size = self.HEIGHT - self.UPPER_SHIFT corgi.setScaledSize(QSize(size, size)) corgi.start() label.setMovie(corgi) label.move((self.WIDTH - size) / 2, (self.HEIGHT - size)) label.show() def back_function(): label.hide() self.first() back = self.create_back_button(back_function)
def handle_scan_click(self): """ Handle scan button action event. Responsible for enabling waiting bar """ label = QLabel(self) label.setText("SEARCHING") self.setDisabled(True) label_width = 500 label_height = 100 label_x_pos = self.size().width() // 2 - label_width // 2 label_y_pos = self.size().height() // 2 - label_height // 2 movie = QMovie("ajax-loader.gif") label.setGeometry(label_x_pos, label_y_pos, label_width, label_height) label.setFrameStyle(Qt.FramelessWindowHint) label.setMovie(movie) label.show() movie.setScaledSize(label.size()) movie.start() self.extract_data_from_fields()
def setupUi(self): centralWidget = QtWidgets.QWidget(self) self.setCentralWidget(centralWidget) flags = QtCore.Qt.WindowFlags(QtCore.Qt.FramelessWindowHint) self.setWindowFlags(flags) self.setAttribute(QtCore.Qt.WA_NoSystemBackground, True) self.setAttribute(QtCore.Qt.WA_TranslucentBackground, True) # 창 배경 투명화 label = QtWidgets.QLabel(centralWidget) movie = QMovie(self.img_path) label.setMovie(movie) movie.start() movie.stop() w = int(movie.frameRect().size().width() * self.size) # 50%... 30% 등의 추가 사이즈 조정을 위해 곱함 h = int(movie.frameRect().size().height() * self.size) movie.setScaledSize(QtCore.QSize(w, h)) # 맞춘 w, h 사이즈에 따라 애니메이션 설정 movie.start() # 재생 self.setGeometry(self.xy[0], self.xy[1], w, h)
class MainWindow(window_name, base_class): def __init__(self): super().__init__() self.setupUi(self) self.widget_sorpresa.hide() # Label de la sorpresa final self.label_gif = QLabel('', self.centralwidget) self.label_gif.move(0, 0) self.label_gif.resize(self.widget_sorpresa.size()) ruta = os.path.join('tenor.gif') self.gif = QMovie(ruta) self.label_gif.setMovie(self.gif) self.gif.setScaledSize(self.label_gif.size()) self.label_gif.hide() # Conectando un botón dentro del Ui con un elemento fuera de este self.boton_adopcion.clicked.connect(self.boom) def boom(self): # Boom self.gif.start() self.label_gif.show()
def _set_controls(self, window_width: int, window_height: int): ''' Adds other required controls on window. ''' if self._start_button: return animation_label = QLabel(parent=self) animation_movie = QMovie(app_data.animation_logo_path()) animation_movie.setScaledSize(QtCore.QSize(window_width // 1.5, window_height)) animation_label.setMovie(animation_movie) animation_movie.start() animation_label.resize(window_width // 1.5, window_height) animation_label.move(0, 0) start_button = QPushButton(QIcon(app_data.yes_logo_path()), "Start", self, default=True, autoDefault=True) start_button.setToolTip("Start to monitor '<B>Downloads</B>' directory on system.") start_button.resize(start_button.sizeHint()) start_button.move(window_width // 1.4, window_height // 10) start_button.clicked.connect(self._start_clicked) self._start_button = start_button about_button = QPushButton(QIcon(app_data.about_logo_path()), "About", self, autoDefault=True) about_button.setToolTip("About application & developer.") about_button.resize(about_button.sizeHint()) about_button.move(window_width // 1.4, window_height // 3.35) about_button.clicked.connect(self._about_clicked) exclusions_button = QPushButton(QIcon(app_data.exclusions_logo_path()), "Exclusions", self, autoDefault=True) exclusions_button.setToolTip("Add file/directory to be <B>ignored by app</B>.") exclusions_button.resize(exclusions_button.sizeHint()) exclusions_button.move(window_width // 1.4, window_height // 2) exclusions_button.clicked.connect(self._exclusions_clicked) quit_button = QPushButton(QIcon(app_data.quit_logo_path()), "Quit", self, autoDefault=True) quit_button.setToolTip("'<B>Quit</B>' the application.") quit_button.resize(quit_button.sizeHint()) quit_button.move(window_width // 1.4, window_height // 1.42) quit_button.clicked.connect(self._quit_clicked)