2017-09-23 96 views
3

我需要能够检查tkinter小部件是否可见(如果其packgrid方法已被调用)。检查tkinter小部件是否可见

我目前做如下:

def is_visible(widget): 
    try: 
     widget.pack_info() 
    except tk.TclError: 
     # pack_info raises if pack hasn't been 
     # called yet. 
     return bool(widget.grid_info()) 
     # grid_info returns {} if grid hasn't been 
     # called yet. 
    else: 
     return True 

是否有,我可以改善这个代码,通过使用标准控件的属性,或者通过一些其他的解决方案,是少“哈克”什么办法?

回答