3
我在寫我的第一個PyQt程序,但是我遇到了按鈕問題。我讀了一些其他Q & A的,但我無法解決它。PyQt:連接對話框中的按鈕
基本上我有一個菜單欄的主窗口。通過點擊菜單項「actionSelect」,打開一個名爲SelectFiles的新對話框。它包含一個名爲「ChooseDirButton」的按鈕,該按鈕應打開選擇目錄小部件,並使用所選目錄更改「ShowPath」linedit文本。
我的代碼如下所示:
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys
import TeraGui
class MainWindow(QMainWindow, TeraGui.Ui_MainWindow):
path = ""
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
self.actionSelect.triggered.connect(self.Select)
def Select(self):
dialog = QDialog()
dialog.ui = TeraGui.Ui_SelectFiles()
dialog.ui.setupUi(dialog)
dialog.setAttribute(Qt.WA_DeleteOnClose)
dialog.exec_()
def ChooseDirectory():
global path
path = str(QFileDialog.getExistingDirectory(self, "Select Directory"))
self.ShowPath.setText(path)
app = QApplication(sys.argv)
form = MainWindow()
form.show()
app.exec_()
我不能讓點擊按鈕「ChooseDirButton」時要執行的ChooseDirectory方法。我試圖連接它們,但我不明白正確的語法。此外,在ChooseDirectory方法中也可能有問題。 我使用Qt Designer創建了GUI,並使用「import TeraGui」命令導入它。
它的工作原理!但我必須將「self.ShowPath.setText(dialog.path)」命令移入ChooseDirectory方法並將其更改爲「self.ShowPath.setText(self.path)」。 – user2996448 2014-11-06 13:58:40