8

簡単な例:

from tkinter import *

class GUI_CMP():
    def __init__(self):
        self.tk = Tk()
        self.text = Text(self.tk,width=60,height=40)
        self.text.pack()

        self.tk.mainloop()

if __name__ == '__main__':
    gui_cmp = GUI_CMP()

これは次のようになります。

ここに画像の説明を入力

ご覧のとおりwidth=60,height=40、テキストウィジェットの幅は高さよりも小さく設定していますが、これはtkinterを使用するたびに私を悩ませ続けます。

  1. 40とはどういう60意味ですか?

  2. テキストの幅が高さよりも小さい理由は何ですか?

  3. サイズコントロールを行う最良の方法は何ですか?

4

1 に答える 1

8

幅と高さを指定するとき、それらはピクセル単位ではありません。それらは、現在のフォントサイズに応じて文字と線で測定されます

そのためText(self.tk,width=60,height=40)、60 はテキスト ウィジェットの幅が 60 文字、40 は高さが 40 行であることを意味します。

これはボタンにも適用されます

ピクセル単位ではなく、フォントを変更するとテキストウィジェットのサイズが変更されるため、混乱の原因はここにあります。

これはおそらくサイズ制御を行うための最良の方法です。最初は混乱するだけですが、今ではそれがより理にかなっていることがわかります!

このサイトのText Widget Infoを見て、パラメータを調べて詳細を確認してください。

于 2013-07-01T07:15:34.343 に答える