[Solved] How to add a list to ScrollArea and select one file from that?
I am new to Python and QT designer, I got stuck in ScrollArea where I want to insert file names (fnames) to scrollArea and select one file from that. Please help me fix it, Thanks in advance
def __init__(self): QtGui.QMainWindow.__init__(self) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.ui.pushButton1.clicked.connect(self.buttonClicked) self.ui.pushButton_2.clicked.connect(self.buttonToClose) def buttonToClose(self): QtGui.qApp.quit() def buttonClicked(self): fdir = QtGui.QFileDialog.getExistingDirectory() if fdir == '': self.ui.lineEdit1.setText('Please select the folder...') else: self.ui.lineEdit1.setText(fdir) fnames = os.listdir(path=fdir) self.listWidget = QtGui.QListWidget(self) self.someLayout.addWidget(self.listWidget) self.listWidget.addItems(fnames)
if name == 'main':
app = QtGui.QApplication(sys.argv)
window = Main()
Traceback (most recent call last):
File "C:\Users\ramas\workspace\PlotGraph_1\Main.py", line 48, in buttonClicked
AttributeError: 'Main' object has no attribute 'someLayout'
apparently someone has to define the member-variable called 'someLayout'. At least in the code given it is never actually defined. So in the constructor you would expect something like
self.someLayout = QtGui.HBoxLayout()
Or something of that type.
However, as you seem to be using a .ui File created witht he QtDesigner and then translated via pyuic I would suppose there is already some Layout set. So you probably want to use
instead. Hope it helps.
Thanks for your help, since I had problem in ScrollArea have changed to listWidget and it worked...
@ def buttonClicked(self):
fdir = QtGui.QFileDialog.getExistingDirectory()
if not fdir:
self.ui.lineEdit1.setText('Please select the folder...')
self.ui.lineEdit1.setText(fdir) fnames = os.listdir(path=fdir) self.ui.listWidget.clear() self.ui.listWidget.addItems(fnames)@
thanks for your help, much appreciated....
So, the code that caused the trouble is no longer there, right?!? Ok, so this thread is solved then (even by omitting the original problem)?!?
I'm a bit confused here :-)
Sorry Soraltan, I have removed the old code and replaced with listWidget. This problem is solved for now, like you have mentioned by omitting the original problem. Thanks for your time and help.
Ok, glad it works for you now. Please mark this thread as solved by prepending [solved] within the title.