2016-05-20 9 views
1

padyに異なる番号を割り当てると、エラーが発生します。私はこれを行うための多くの方法を試してきましたが、どれもうまくいきません。私はいつもエラーが出ます。多分コードが間違っている、私はそれがすべきであるか分からない。これは私が考えることができる最高ですが、理由を説明することなくエラーが発生しています。Python 2.7パディマージンエラー

from Tkinter import * 

root=Tk() 
root.geometry("200x300") 
root.title("basicGUI") 
root.configure(background="gray") 

w1=Label(text="widget 1", 
     pady = (TOP = "20", BOTTOM = "1")) 
w1.pack() 

w2=Label(text="widget 2", 
     pady = (TOP = "1", BOTTOM = "1")) 
w2.pack() 

w3=Label(text="widget 3", 
     pady = (TOP = "1", BOTTOM = "20")) 
w3.pack() 

mainloop() 
+0

質問に実際のエラーを含めてください。 –

答えて

1

お知らせ:答えはグリッドに詰める置き換え

は、ここであなたがやりたいことには、正しい方法です。この例では、ラベル領域は位置情報が必要な場所ではありません。このコードではエラーは発生しません。

w1=Label(frame, text="widget 1") 
w1.grid(row = 0, column = 0, pady =(20,1)) 

w2=Label(frame, text="widget 2") 
w2.grid(row = 0, column = 0, pady =(1,1)) 

w3=Label(frame, text="widget 3") 
w3.grid(row = 2, column = 0, pady = (1,20)) 
+0

Billal BEGUERADJ、code works私のすべての.pyプログラムで。フレーム内またはフレーム内でない場合、エラーは発生しません。それはキーパーです。ありがとう。 Bryan Oakley、あなたのコードはフレームからしか動かない。フレームではエラーが発生します。また、あなたのwebSiteの提案を見ました。それは私にはあまりにも謎です。私はそうではない極端な経験のために書かれています。 – rasPi2bSarah

+0

ブライアン・オークリー、あなたはいつもすてきな情報を提供します。私はいつもあなたの答えを見ることを楽しみにしています。本当にありがとう。 – rasPi2bSarah

1

カウント方法によっては2つまたは3つの問題があります。

ラベルtakes a single value. If you want to give it two values, use the pady attribute of the pack command. The pady option on the label itself has a different behavior than the pady option for the pack`コマンドでpadyオプション

第二の問題は、TOP定数Tkinterのは、あなたが("top"="20", "bottom"="1")としてタプル(違法)を作成しようとしていることを意味する、値"top"を持っているということです。うまくいけば分かるように、それは無効な構文です。

w1.pack(pady=(20, 10)) 
+0

お役立ち情報私はいくつかのトリックを試みたが、うまくいきませんでした。私は 'pack()'メソッドも調べましたが、これに関する情報は見つかりませんでした。 –

+1

@BillalBEGUERADJ:私がgoogle "tkinter pack"を入手した最初のリンクはこれです。これはすべてのオプションを説明するまともな仕事です:http://effbot.org/tkinterbook/pack.htm –