私は単純なtkinterウィンドウのポップアップ(pastebinリンク:http://pastebin.com/kvv0G4rM)を作成しています。私が直面している問題はタイトルメッセージ( "Enter costs")がポップアップするtkinterウィンドウから切り取られていることです。wm_title( "message")がtkinterウィンドウで切り取られていますか?
私はtkinterウィンドウのサイズを変更しようとしましたが、それを中心に移動しました。そのような場合、ラベル、ボタンはすべて画面に完全には入りません。それは私が動的にそれぞれの行を追加する必要がありますように私は、グリッドを使用しています。この
The current scenario of the lables and buttons
のように見えます
(高さや大きコメントや.geometry関数呼び出しをコメントアウトしてください)「を追加経費 "ボタンを押す。関数(add_row)を参照してください。インデックス変数は、新しいエントリフィールドが挿入される行の数を保持します。
この質問は次のようになります - What controls automated window resizing in Tkinter?
唯一の問題は、私はそれを手動でサイズ変更するとき、私は自動を失うことである - 行動のサイズを変更します。これはtkinterウィンドウの後半の動作に必要です(これは、「経費の追加」ボタンを押して新しいエントリフィールドを追加するときです)。
私は、コードを含む午前: -
self.root = master
self.root.wm_title("Enter Expenses")
self.frame = tkinter.Frame(master)
self.frame.grid()
self.button = tkinter.Button(self.frame,
text="QUIT", fg="red",
command=self.exit)
self.button.grid(row=0,column=0)
self.slogan = tkinter.Button(self.frame,
text="Add Expense",
command=self.create_expenseTable)
self.slogan.grid(row=0,column=1)
def create_expenseTable(self):
global index
global expenseReport
self.frame.destroy()
self.frame = tkinter.Frame()
self.frame.grid()
tkinter.Label(self.frame,text="Category").grid(row=index,column=0)
tkinter.Label(self.frame,text="Amount").grid(row=index,column=1)
index+=1
self.e1 = tkinter.Entry(self.frame)
self.e2 = tkinter.Entry(self.frame)
self.e1.grid(row=index, column=0)
self.e2.grid(row=index, column=1)
index+=1
self.create_button()
def create_button(self):
global index
self.slogan = tkinter.Button(self.frame,
text="Add Expense",
command=self.add_row)
self.slogan.grid(row=index,column=1)
self.submit = tkinter.Button(self.frame,text="Submit Expense",command=self.endFunction)
self.submit.grid(row=index,column=0)
def add_row(self):
global index
global expenseReport
self.slogan.destroy()
self.submit.destroy()
category = self.e1.get()
expense = self.e2.get()
self.e1 = tkinter.Entry(self.frame)
self.e2 = tkinter.Entry(self.frame)
self.e1.grid(row=index,column=0)
self.e2.grid(row=index,column=1)
index+=1
self.create_button()
add_expenseのすべてのボタンクリックのインデックスインクリメント;新しい行を追加し、ボタンを1行下にシフトします。
私は間違っていますか? ウィンドウのすべての内容が完全にウィンドウ(タイトルバーなど)にフィットし、サイズを変更すると非表示にならないようにしたいと思います。
「タイトルのメッセージ(「経費の入力」)は、「ポップアップするtkinterウィンドウから切断されましたか?カテゴリと金額セクションの両方を表示するはずですが、最初のセクションのみが表示されますか?これは私があなたが上で提供したイメージから理解したものです。 –
イメージを更新しました。最初の画像を確認して、ウィンドウがポップアップしたときに費用を入力する方法を確認してください。 – Echo
ルートウィンドウに '.geometry()'メソッドを使うだけです。たとえば、「500x100」などの値を追加します。最初の1つ(この場合は500)は、ルートウィンドウの幅になります。 –