[英]PyQt5: binding QLineEdit with QFileDialog
我一直在嘗試為實驗室同事創建GUI程序。
我的主窗口上有一些文本框,用於顯示用戶添加的文件目錄。
我是PyQt5的新手,我想在文本框中添加功能。
例如,textbox = QLineEdit().. textbox1 = .. textbox2 = ..
因此,在單擊主窗口添加文件之前,我想選擇文本框,然后將文件目錄寫入正確的文本框。
我嘗試進行自定義clickablelineedit,但未成功。
還有另一種方法嗎?
國王的問候,
編輯:
class Mutation_Finder():
def __init__(self):
... (Main Window Code)
def openFileNamesDialog(self, **kwargs):
self.options = QFileDialog.Options()
self.options |= QFileDialog.DontUseNativeDialog
self.files, self._= QFileDialog.getOpenFileNames(self,"Dosya Ac","","All Files (*);;.abi,.fasta (*.abi,*fasta)", options=self.options)
def toDoSomething():
if textbox is clicked:
for i in range(len(self.files):
self.textbox.insert(self.files[i])
if textbox1 is clicked:
...
if textbox2 is clicked:
...
解決了:
class cQLineEdit(QLineEdit):
clicked=pyqtSignal()
def __init__(self,*args, **kwargs):
super().__init__(*args,**kwargs)
def mousePressEvent(self,QMouseEvent):
self.clicked.emit()
class MainClass(cQLineEdit)
textbox=cQLineEdit(self)
....
....
self.clicked.connect(...)
我用這種方法解決了它,但單擊事件仍然有問題,因為當我從QLineEdit中單擊時出現錯誤:
self.clicked.emit()AttributeError:“ className”沒有簽名為clicked()的信號
這樣,我也不知道該如何處理。
除此之外,這里是與解決方案相關的鏈接。 Pyqt 5如何使QLineEdit可點擊
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.