31
Авг
2016

QFileDialog вешает программу на несколько секунд

Используя QFileDialog в своем приложении на pyqt.

Иногда после закрытия диалог вешает программу на некоторое заметное количество секунд.

Сократил код до минимума - безрезультатно:

# -*- coding: utf-8 -*-

import sys
from PyQt4 import QtGui, QtCore


def selectDir():
    directory = QtGui.QFileDialog.getExistingDirectory(None, u"Выберите рабочую папку") + u"\\"


class TestButton(QtGui.QWidget):
    def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)

        self.setGeometry(300, 300, 250, 150)
        self.setWindowTitle('Icon')

        quit = QtGui.QPushButton('Close', self)
        quit.setGeometry(10, 10, 60, 35)

        self.connect(quit, QtCore.SIGNAL('clicked()'), selectDir)


app = QtGui.QApplication(sys.argv)
qb = TestButton()
qb.show()
sys.exit(app.exec_())

Если кликнуть по кнопке, и закрыть диалог, то вы заметите задержку. Сама проблема довольно критичная, т.к. вызывает отвращение при использовании программы

Источник: https://ru.stackoverflow.com/questions/561539/qfiledialog-%D0%B2%D0%B5%D1%88%D0%B0%D0%B5%D1%82-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D1%83-%D0%BD%D0%B0-%D0%BD%D0%B5%D1%81%D0%BA%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE-%D1%81%D0%B5%D0%BA%D1%83%D0%BD%D0%B4

Тебе может это понравится...

Добавить комментарий