Hi Michael Thanks. this does the trick for me.
Regards Paul Malherbe On 15/08/2013 20:58, Michael Lange wrote: > On Tue, 30 Jul 2013 15:01:16 +0200 > Michael Lange <klappn...@web.de> wrote: > >> Hmm... the "center on screen" gimmick works only with the first dialog, >> can someone fix that ;) >> Anyway, unless we come up with something better, I'd classify this as >> strictly "don't try this at home"-ish :) > Just for the fun of it I've been playing with this for a few more minutes > and finally found something that seems almost usable ;) > The trick seems to be that we must use a timer to make sure the geometry > is set only after the dialog window shows up, which however causes an ugly > "flashing" effect. Besides that this code snippet seems to work ok, the > geometry is set to one third of the screen's width and height and the > dialog is centered on the screen. > > Regards > > Michael > > ################################################################# > from Tkinter import * > import tkFileDialog > > root=Tk() > > def set_filedialog_geometry(): > w, h = root.winfo_screenwidth(), root.winfo_screenheight() > w0, h0 = w / 3, h / 3 > x, y = w / 2 - w0 / 2, h / 2 - h0 / 2 > try: > root.tk.call('wm', 'geometry', '.__tk_filedialog', > '%dx%d+%d+%d' % (w0, h0, x, y)) > except TclError: > print('TclError') > #root.after(100, set_filedialog_geometry) > > def ask_open_filename(**kw): > root.after(100, set_filedialog_geometry) > tkFileDialog.askopenfilename(**kw) > > def ask_saveas_filename(**kw): > root.after(100, set_filedialog_geometry) > tkFileDialog.asksaveasfilename(**kw) > > def test1(ev): > ask_open_filename() > def test2(ev): > ask_saveas_filename() > > root.bind('<F1>', test1) > root.bind('<F2>', test2) > > root.mainloop() > > > .-.. .. ...- . .-.. --- -. --. .- -. -.. .--. .-. --- ... .--. . .-. > > Witch! Witch! They'll burn ya! > -- Hag, "Tomorrow is Yesterday", stardate unknown > _______________________________________________ > Tkinter-discuss mailing list > Tkinter-discuss@python.org > http://mail.python.org/mailman/listinfo/tkinter-discuss > _______________________________________________ Tkinter-discuss mailing list Tkinter-discuss@python.org http://mail.python.org/mailman/listinfo/tkinter-discuss