我是Python的新手,尤其是PyQT的新手。我使用PyQT5创建了一个非常简单的GUI。现在,我想对其进行升级,使其包含一些比计算数字运算更真实的东西。
我希望用户选择包含图像的目录。之后,以及其他一些小操作,例如勾选一些复选框,我想在后台运行我的算法,同时要通过progressBar向他/她显示进度。
这是我现在的代码:
import sys
from os.path import expanduser
from PyQt5.QtWidgets import QMainWindow, QApplication
from PyQt5 import uic, QtGui
Ui_MainWindow, QtBaseClass = uic.loadUiType("mainGui_3A.ui")
class MyApp(QMainWindow):
def __init__(self):
super(MyApp, self).__init__()
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
self.ui.pushButton_Directory.clicked.connect(self.choose_directory)
self.ui.pushButton_CreateAlbum.clicked.connect(self.create_album)
def choose_directory(self):
my_dir = QtGui.QFileDialog.getExistingDirectory(
self,
"Open a folder",
expanduser("~"),
QtGui.QFileDialog.ShowDirsOnly
)
self.ui.lineEdit_Directory.setText(my_dir)
def create_album(self):
current_dir = self.ui.lineEdit_Directory.toPlainText()
check1 = self.ui.checkBox_1.value()
check2 = self.ui.checkBox_2.value()
return current_dir, check1, check2
if __name__ == "__main__":
app = QApplication(sys.argv)
window = MyApp()
window.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
我看过:
PyQt:QFileDialog.getExistingDirectory使用默认目录,用户独立
如您所见,自以下错误以来,我仍然没有添加最后一位,但我认为我需要研究一下: