Running Ubuntu 18.04, Python 3.6.7, tkinter 8.6 I am very new to tkinter. The simple program I am writing requires a user file to be selected before it does anything else, so I would like a file selection dialog in the main window as soon as the program launches.
Tkinter only has askopenfilename(), but this produces a popup dialog. I can get something like what I want by specifying a small Tk() window and then calling askopenfilename() so that it covers the root window. It's not ideal, though. From the documentation I thought that the tix FileSelectBox would do what I wanted, but I just can't get it to work. If I run: from tkinter import * from tkinter.tix import FileSelectBox root = Tk() f = FileSelectBox(root) I get the following: Traceback (most recent call last): File "/home/david/bin/Gradient.py", line 4, in <module> f = FileSelectBox(root) File "/usr/lib/python3.6/tkinter/tix.py", line 795, in __init__ TixWidget.__init__(self, master, 'tixFileSelectBox', ['options'], cnf, kw) File "/usr/lib/python3.6/tkinter/tix.py", line 311, in __init__ self.tk.call(widgetName, self._w, *extra) _tkinter.TclError: invalid command name "tixFileSelectBox" I realize that assigning the value of FileSelectBox() isn't going to give me a filename: I'm just trying to get the basic syntax right at the moment. I can't figure out what is wrong though. Have I have misunderstood how it should be called, or is there something missing from my system? David -- https://mail.python.org/mailman/listinfo/python-list