我需要创建一个基本的整数计算器程序,该程序使用两个条目,一个组合框,两个标签和一个按钮进行基本计算,如下图所示。组合框应具有加,减和乘的选项,分别显示为“ +”,“-”和“ *”。
布局网格的第0行必须分别在0到2列中包含一个条目,组合框和另一个条目。在某处还必须有一个标签来显示结果值,可以选择在其前面加上等号,如下图所示。该按钮必须包含文本“计算”。您可以假设仅将整数输入到条目中。
Counter GUI的布局如图here
所示我创建按钮计算器没有问题。我的问题是如何获取图片中所示的有效GUI。有什么想法吗?
答案 0 :(得分:0)
花费了一些努力,但是这里:
from tkinter import *
from tkinter.ttk import *
def left_side():
"""Left """
global left_entry, right_entry, answer_label, integer_combo
left_entry.get()
def right_side():
"""Right"""
global left_entry, right_entry, answer_label, integer_combo
right_entry.get()
def combo_calc():
"""Combobox basic Calculator"""
global left_entry, right_entry, answer_label, integer_combo
if integer_combo.get() == "+":
answer_label['text'] = str(int(left_entry.get()) + int(right_entry.get()))
elif integer_combo.get() == "-":
answer_label['text'] = str(int(left_entry.get()) - int(right_entry.get()))
elif integer_combo.get() == "*":
answer_label['text'] = str(int(left_entry.get()) * int(right_entry.get()))
def main():
"""Runs the main GUI"""
global left_entry, right_entry, answer_label, integer_combo
window = Tk()
integer_options = ["+", "-", "*"]
integer_combo = Combobox(window,
values=integer_options)
integer_combo.set("+")
integer_combo.grid(row=0, column=1)
left_entry = Entry(window)
left_entry.grid(row=0, column=0)
right_entry = Entry(window)
right_entry.grid(row=0, column=2)
calc_button = Button(window, text='Calculate', command=combo_calc)
calc_button.grid(row=1, column=1)
equals_label = Label(window, text="=")
equals_label.grid(row=0,column=3)
answer_label = Label(window)
answer_label.grid(row=0, column= 4)
window.mainloop()
main()