#python tkinterで電卓を作っているのですが
ボタンを.gridで並べているのですがそれが一番上に来てしまって
テキストボックスやラベルの位置を端っこに寄せなければいけないのですがのですが
###ボタンの位置を下にずらすしてテキストボックスことを一番上にすることは出来ないのですか?
python
1import tkinter 2import tkinter as tk 3from tkinter import messagebox as mbox 4import math 5 6win = tk.Tk() 7 8#タイトル 9win.title("電卓") 10 11#ラベル作成 12label = tk.Label(win,text ='電卓',font=("",20)) 13label.place() 14 15#テキストボックス作成 16text = tk.Entry(win,width=10) 17text.place(x=50,y=0) 18 19#各ボタンが押された時に,テキストボックスに入力 20def func(v): 21 text.insert(tkinter.END,v) 22 23#Cボタンを押された時の反応(1文字削除) 24def delfunc(): 25 pos_end_prev = len(text.get())-1#終わりの1つ前 26 text.delete(pos_end_prev,tkinter.END) 27 28#ACボタンを押された時の反応(全文字削除) 29def del_click(): 30 text.delete(0, tkinter.END) 31 32#=ボタンを押された時の反応(計算結果を表示) 33def equr_click(a): 34 answer = eval(text.get())#計算結果取得 35 36 #テキストボックス内を更新 37 text.insert(tkinter.END,a) 38 text.insert(tkinter.END,str(answer)) 39 40 41#0~9ボタン作成 42btn_0 = tk.Button(win, text="0", command=lambda: func("0")).grid(column=0, row=4) 43btn_1 = tk.Button(win, text="1", command=lambda: func("1")).grid(column=0, row=1) 44btn_2 = tk.Button(win, text="2", command=lambda: func("2")).grid(column=1, row=1) 45btn_3 = tk.Button(win, text="3", command=lambda: func("3")).grid(column=2, row=1) 46btn_4 = tk.Button(win, text="4", command=lambda: func("4")).grid(column=0, row=2) 47btn_5 = tk.Button(win, text="5", command=lambda: func("5")).grid(column=1, row=2) 48btn_6 = tk.Button(win, text="6", command=lambda: func("6")).grid(column=2, row=2) 49btn_7 = tk.Button(win, text="7", command=lambda: func("7")).grid(column=0, row=3) 50btn_8 = tk.Button(win, text="8", command=lambda: func("8")).grid(column=1, row=3) 51btn_9 = tk.Button(win, text="9", command=lambda: func("9")).grid(column=2, row=3) 52 53#記号ボタン作成 54btn_p = tk.Button(win, text="+", command=lambda: func("+")).grid(column=3, row=1) #+ 55btn_m = tk.Button(win, text="-", command=lambda: func("-")).grid(column=3, row=2) #- 56btn_k = tk.Button(win, text="×", command=lambda: func("*")).grid(column=3, row=3) #* 57btn_w = tk.Button(win, text="÷", command=lambda: func("/")).grid(column=3, row=4) #/ 58btn_s = tk.Button(win, text=".", command=lambda: func(".")).grid(column=1, row=4) #小数点 59 60btn_i = tk.Button(win, text="=", command=lambda: equr_click("=")).grid(column=2, row=4) #= 61btn_AC = tk.Button(win, text='AC', command=del_click).grid(column=0, row=6) #AC 62btn_C = tk.Button(win, text="C", command=lambda: delfunc()).grid(column=1, row=6) #C 63 64#実行 65win.mainloop()
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/08/05 05:22
2019/08/06 12:03
2019/08/09 09:22