浏览代码

Merge pull request #1779 from weety/dev

Solve the flicker problem when display the pyconfig window.
Bernard Xiong 6 年之前
父节点
当前提交
b379407fa8
共有 1 个文件被更改,包括 6 次插入0 次删除
  1. 6 0
      tools/pymenuconfig.py

+ 6 - 0
tools/pymenuconfig.py

@@ -428,6 +428,7 @@ class EntryDialog(object):
     def __init__(self, master, text, title, ident=None, value=None):
         self.master = master
         dlg = self.dlg = tk.Toplevel(master)
+        self.dlg.withdraw() #hiden window
         dlg.title(title)
         # Identifier label
         if ident is not None:
@@ -471,6 +472,7 @@ class EntryDialog(object):
         dlg.grab_set()
         # Center dialog window
         _center_window_above_parent(master, dlg)
+        self.dlg.deiconify() # show window
         # Focus entry field
         self.entry.focus_set()
 
@@ -486,6 +488,7 @@ class TextDialog(object):
     def __init__(self, master, text, title):
         self.master = master
         dlg = self.dlg = tk.Toplevel(master)
+        self.dlg.withdraw() #hiden window
         dlg.title(title)
         dlg.minsize(600,400)
         # Text
@@ -510,6 +513,7 @@ class TextDialog(object):
         dlg.grab_set()
         # Center dialog window
         _center_window_above_parent(master, dlg)
+        self.dlg.deiconify() # show window
         # Focus entry field
         self.text.focus_set()
 
@@ -544,6 +548,7 @@ class MenuConfig(object):
 
         # Instantiate Tk widgets
         self.root = tk.Tk()
+        self.root.withdraw() #hiden window
         dlg = self.root
 
         # Window title
@@ -624,6 +629,7 @@ class MenuConfig(object):
         self.label_status.pack(fill=tk.X, padx=4, pady=4)
         # Center window
         _center_window(self.root, dlg)
+        self.root.deiconify() # show window
         # Disable keyboard focus on all widgets ...
         self._set_option_to_all_children(dlg, 'takefocus', 0)
         # ... except for main ListBox