Bài viết hướng dẫn tạo ứng dụng tính tỷ lệ (Ratio Calculator) dùng SpinBox – widget tạo bộ chọn giá trị trong khoảng min-max.
Tạo khung Tkinter, định nghĩa widget và hàm tính toán.
Ví dụ
from tkinter import *
win = Tk()
win.title("Ratio Calculator")
win.geometry("600x500")
win.resizable(0,0)
# Label tiêu đề
label = Label(win, text="Ratio Calculator", font=('Times New Roman', 25))
label.pack()
# Hàm tính tỷ lệ: a:b = c:x => x = (b*c)/a
def ratio_cal():
a1 = int(a.get())
b1 = int(b.get())
c1 = int(c.get())
val = (b1 * c1) / a1
x_val.config(text=val)
# Frame chứa 3 Spinbox
frame = Frame(win)
frame.pack()
# Spinbox A, B, C
a = Spinbox(frame, from_=0, to=100000, font=('Times New Roman', 14), width=10)
a.pack(side=LEFT, padx=10, pady=10)
b = Spinbox(frame, from_=0, to=100000, font=('Times New Roman', 14), width=10)
b.pack(side=LEFT, padx=10, pady=10)
c = Spinbox(frame, from_=0, to=100000, font=('Times New Roman', 14), width=10)
c.pack(side=LEFT, padx=10, pady=10)
# Label hiển thị kết quả
x_val = Label(frame, text="", font=('Times New Roman', 18))
x_val.pack(side=LEFT)
# Nút Calculate
Button(win, text="Calculate", command=ratio_cal, borderwidth=3, fg="white", bg="black", width=15).pack(pady=20)
win.mainloop()Kết quả
Chạy code tạo GUI Ratio Calculator.
