Tkinter エントリウィジェットの高さと幅を設定する方法

Jinku Hu 2023年1月30日 2020年4月1日
  1. 幅を設定するための Entry ウィジェットの width オプション
  2. Tkinter の Entry ウィジェットの widthheight を設定するための place ジオメトリメソッドの widthheight オプション
  3. Tkinter の Entry ウィジェットの幅と高さを設定するための pack および grid メソッドの ipadx および ipady オプション
Tkinter エントリウィジェットの高さと幅を設定する方法

Tkinter Entry ウィジェットは、ユーザーが 1 行のテキストを入力または表示できるようにするウィジェットです。したがって、通常、Entry ウィジェットの高さを設定する必要はありません。しかし、Tkinter Entry ウィジェットの高さと幅を設定するいくつかのメソッドがあります。

  1. 幅を設定するための Entry ウィジェットの width オプション
  2. Tkinter の Entry ウィジェットの幅と高さを設定するための place メソッドの width および height オプション
  3. Tkinter の Entry ウィジェットの幅と高さを設定するための pack および grid メソッドの ipadx および ipady オプション

幅を設定するための Entry ウィジェットの width オプション

Entry ウィジェットの幅のみを指定する必要がある場合は、Entry ウィジェットの width オプションが最も簡単な方法です。

import tkinter as tk

app = tk.Tk()
app.geometry("400x200")

entryExample = tk.Entry(app,
                        width=10)

entryExample.pack(side=tk.LEFT,
                  padx=10)

app.mainloop()

Tkinter エントリの幅オプション

Tkinter の Entry ウィジェットの width オプションの単位はテキスト単位ですがピクセルではありません。幅の 1つのテキスト単位は、システムフォントの 0 の幅と同じです。そのため、width が 10 に設定されている場合、上の画像で 10 個のゼロが表示される可能性があります。

Tkinter の Entry ウィジェットの widthheight を設定するための place ジオメトリメソッドの widthheight オプション

place ジオメトリメソッドwidthheight は、ウィジェットの幅と高さを設定しますピクセルの単位。

import tkinter as tk

app = tk.Tk()
app.geometry("400x200")

entryExample = tk.Entry(app)
entryExample.place(x = 10,
        y = 10,
        width=200,
        height=100)

app.mainloop()

Tkinter Entry 幅と高さのオプションの配置方法 place

Tkinter の Entry ウィジェットの幅と高さを設定するための pack および grid メソッドの ipadx および ipady オプション

ipadxipady は、水平方向と垂直方向の内部パディングを設定します。Tkinter Entry ウィジェットの幅と高さを間接的に設定できます。

grid メソッドを使用した Tkinter Entry ウィジェットのジオメトリは以下のとおりです。

Tkinter Entry 幅と高さのオプションの配置方法 grid

Tkinter の実際の幅 Entry2*ipadx + デフォルトのエントリー幅です。同様に、Entry の実際の幅は 2*ipady + デフォルトのエントリの高さです。

import tkinter as tk

app = tk.Tk()

entryExample1 = tk.Entry(app)
entryExample2 = tk.Entry(app)

entryExample1.grid(row=0,
               column=0,
               padx=10,
               pady=10,
               ipady=30)

entryExample2.grid(row=1,
               column=0,
               padx=10,
               pady=10,
               ipadx=20,
               ipady=30)

app.geometry("200x200")

app.mainloop()

グリッド方式の Tkinter Entry_ipadx

このように、entryExample2ipadx20 であるため、entryExample1ipadx はデフォルトで 0 であるため、entryExample2 の幅は entryExample1 よりも 40 ピクセル広い。

同様に、ipady を設定して Tkinter の Entry ウィジェットの幅を変更できます。

import tkinter as tk

app = tk.Tk()

entryExample1 = tk.Entry(app)
entryExample2 = tk.Entry(app)

entryExample1.grid(row=0,
               column=0,
               padx=10,
               pady=10,
               ipady=50)

entryExample2.grid(row=0,
               column=1,
               padx=10,
               pady=10,
               ipady=60)

app.geometry("300x200")

app.mainloop()

グリッド方式の Tkinter Entry_ipady

Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn

関連記事 - Tkinter Entry