Найти - Пользователи
Полная версия: Обработка команд от QFileDialog
Начало » Python для новичков » Обработка команд от QFileDialog
1
vsavelyev
Как правильно указать что делать приложению после нажатия Cancel, чтобы окно QFileDialog просто закрывалось, а основное окно приложения оставалось работать в режиме ожидания? Сейчас из-за отсутствия получения информации из QFileDialog приложение вылетает.. Где обрабатывать нужный код от Cencel разобрался, вот что туда для этого вставить не пойму..
ZerG
Наверное все же нуэно сначала почитать документацию по куте а потом пробовать что-то написать на нем?
посмотрите примеры
https://www.codespeedy.com/close-a-window-in-pyqt5-in-python/

В конце концов покажите свой код! Иначе как мы узнаем что и откудова вы запускаете и как пытаетесь зайрыть?
vsavelyev
ZerG
Наверное все же нуэно сначала почитать документацию по куте а потом пробовать что-то написать на нем? посмотрите примерыhttps://www.codespeedy.com/close-a-window-in-pyqt5-in-python/В конце концов покажите свой код! Иначе как мы узнаем что и откудова вы запускаете и как пытаетесь зайрыть?

 import re
import hashlib
import yadisk
from PyQt5.QtWidgets import QFileDialog
import sqlite3 as sq
from main_ui import *
from cryptography.fernet import Fernet
import sys
class Ui_Main(QtWidgets.QMainWindow):
    def __init__(self):
        super(Ui_Main, self).__init__()
        self.ui = Ui_MainWindow()
        self.ui.setupUi(self)
        self.ui.groupBox_2.hide()
        self.ui.groupBox_4.hide()
        self.ui.groupBox_5.hide()
        self.ui.widget_2.hide()
        self.ui.pushButton_12.clicked.connect(self.autorisation)
        self.ui.pushButton_14.clicked.connect(self.exit_main_window)
        self.ui.pushButton_13.clicked.connect(self.clear)
        self.ui.pushButton_11.clicked.connect(self.exit_main_window)
        self.ui.pushButton_16.clicked.connect(self.create_activation_key)
        self.clear()
    def autorisation(self):
        ...................
        
        f_open = QFileDialog.getOpenFileName(self, 'Выберите файл Activation Code', '', 'BIN file (*.bin)')
        if f_open[0] is None:
               print("Cancel")
        else:
               .................
app = QtWidgets.QApplication([])
window = Ui_Main()
window.showMaximized()
sys.exit(app.exec_())

Пока что действую по такой логике.. Принт “Cancel” выводится нормально, вот дальше программа выходит из условия и выдает ошибку.. Вопрос в том как ее после Cancel вернуть в режим ДО появления диалогового окна.. Предложенную статью понял, но применение не сработало..
ZerG
 if not f_open:
    return

?
vsavelyev
ZerG
не.. так же вылет..
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB