2017-08-15 35 views
0

私はTKを学んでいて、PythonでPanedwindowを使って問題にぶつかっています。コード:tk.Panedwindowが表示されません

import tkinter as tk 
import tkinter.ttk as ttk 

class Application(tk.Frame): 
    def __init__(self,master): 
     #Set top window geomotry 

     tk.Frame.__init__(self,master) 

     pane = tk.PanedWindow(self) 
     pane.pack(fill=tk.BOTH, expand=1) 


     test=tk.Label(pane,text='test') 
     test.pack() 

root=tk.Tk() 
root.geometry("800x600") 
app=Application(root) 
tk.mainloop() 

ルートウィンドウに何も表示されません。

答えて

2

Applicationのすべては、Applicationのインスタンスが表示されている場合にのみ表示されます。 packplace、またはgridApplicationのインスタンス(つまり、app)に呼び出していないため、そうではありません。

もう1つの問題は概念的なものです。ペイントされたウィンドウを追加してもペインが1つしかない場合は、分割するものがないため、分割されません。

ここではコードの作業バージョンを示し、2番目のペインでより簡単に視覚化することができます。

import tkinter as tk 
import tkinter.ttk as ttk 

class Application(tk.Frame): 
    def __init__(self,master): 
     #Set top window geomotry 

     tk.Frame.__init__(self,master) 

     pane = tk.PanedWindow(self) 
     pane.pack(fill=tk.BOTH, expand=1) 

     test=tk.Label(pane, text='test', background="pink") 
     pane.add(test) 

     test2 = tk.Label(pane, text="foo", background="blue") 
     pane.add(test2) 

root=tk.Tk() 
root.geometry("800x600") 
app=Application(root) 
app.pack(fill="both", expand=True) 
tk.mainloop() 
関連する問題