我正在使用PyQt4创建一个窗口来提示用户输入文本(比如报告的名称)并选择文件来生成报告。
我想把一切都放在那个窗口里。这是一个愚蠢的窗口......左边是按钮,右边是字段。对于文本输入,我有一个按钮来接受右边的QLineEdit。我希望那里也有一些用户指定文件的反馈,所以他们知道他们输入了程序所需的所有信息(或者他们可以仔细检查他们选择了正确的文件) 。
我认为最简单的方法是通过向网格布局添加QLabel小部件来显示所选文件的路径。我不确定我做错了什么......我最初将它设置为'',然后我告诉它将文本设置为按钮所连接的函数中的文件路径。
self.Logo_button = QtGui.QPushButton(names[1], self)
self.LogoLabel = QLabel()
self.LogoLabel.setText = ''
self.Logo_button.clicked.connect(self.logo_pic)
grid.addWidget(self.Logo_button, 1, 0)
grid.addWidget(self.LogoLabel, 1,1)
def logo_pic(self):
self.Logo_picture = unicode(QtGui.QFileDialog.getOpenFileName())
self.LogoLabel.setText = self.Logo_picture
答案 0 :(得分:1)
您正在为self.LogoLabel.setText
分配一个字符串,就好像它是一个数据属性一样。但事实并非如此 - 它只是method。所以相反,你应该这样做:
self.LogoLabel.setText(self.Logo_picture)
无需初始化标签文本:默认情况下,它已设置为空字符串。