所以我开发了这个GUI用于工作,但我无法将QcomboBox连接到多个不同的插槽,具体取决于用户输入。基本上,我希望用户能够从QcomboBox中选择一个驱动器,然后按下QpushButton并自动定向到网络驱动器。
我已经在逻辑上摸不着头几天了。我知道代码的第二部分应该是这样的(也许?):
def retranslateUi(Self, MainWindow):
self.btnGo.clicked.connect(self.DriverSelectClicked)
def DriverSelectClicked(self):
if self.comboBox1.currentIndex() == 0:
os.startfile('C:/')
if self.comboBox1.currentIndex() == 1:
os.startfile('Z:/')
答案 0 :(得分:1)
您应该直接从组合框中提取驱动路径信息。除了设置组合框条目的文本外,您还可以设置数据
drives = ['C:\\', 'Z:\\']
for drive in drives:
text = '[{}] Disk Drive'.format(drive)
self.comboBox1.addItem(text, drive)
然后,当您处理点击时,您可以只读取包含该驱动器的数据字段并直接使用该
def DriverSelectClicked(self):
drive = self.comboBox1.itemData(self.comboBox1.currentIndex())
if drive:
os.startfile(drive)