آغاز کار با tkinter
برای ساخت پنجره ساده با tkinter در پایتون، ابتدا باید بدانیم که tkinter چیست. tkinter یک کتابخانه گرافیکی در پایتون است که به ما کمک میکند تا برنامههای گرافیکی کاربرپسند ایجاد کنیم. این کتابخانه به همراه پایتون نصب میشود، پس نیاز به نصب جداگانه ندارد.
نصب tkinter
اگر از قبل پایتون را نصب کردهاید، tkinter نیز به صورت خودکار نصب شده است. اما اگر به هر دلیلی tkinter را ندارید، میتوانید آن را به راحتی نصب کنید. برای نصب tkinter در سیستمعامل ویندوز، به قسمت “Add or remove programs” بروید و پایتون را جستجو کنید. اگر پایتون را دارید، آن را انتخاب کنید و روی “Modify” کلیک کنید. سپس، مطمئن شوید که گزینه “tcl/tk and IDLE” را انتخاب کردهاید.
در سیستمعامل مک (macOS)، میتوانید با اجرای دستور زیر در ترمینال، tkinter را نصب کنید:
brew install python-tk
در لینوکس، میتوانید با اجرای دستور زیر در ترمینال، tkinter را نصب کنید:
sudo apt-get install python3-tk
ساخت پنجره ساده
حالا که tkinter را نصب کردیم، میتوانیم یک پنجره ساده بسازیم. برای این کار، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
root.mainloop()
بیایید ببینیم هر خط از کد چه میکند:
– `import tkinter as tk`: ما در حال وارد کردن کتابخانه tkinter هستیم و آن را با نام tk خلاصه میکنیم.
– `root = tk.Tk()`: ما در حال ایجاد یک پنجره جدید هستیم. این پنجره، پنجره اصلی ما خواهد بود.
– `root.title(“پنجره ساده”)`: ما در حال تعیین عنوان پنجره هستیم.
– `root.geometry(“300×200”)`: ما در حال تعیین اندازه پنجره هستیم. در این حالت، پنجره 300 پیکسل عرض و 200 پیکسل ارتفاع خواهد داشت.
– `root.mainloop()`: ما در حال اجرای حلقه اصلی برنامه هستیم. این حلقه، برنامه را فعال نگه میدارد و منتظر رویدادها است.
وقتی این کد را اجرا کنید، یک پنجره ساده با عنوان “پنجره ساده” و اندازه 300×200 پیکسل ظاهر خواهد شد.
افزودن عناصر به پنجره
حالا که یک پنجره ساده داریم، میتوانیم عناصر مختلفی مانند برچسبها، دکمهها و جعبههای متن را به آن اضافه کنیم. برای این کار، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
label = tk.Label(root, text="سلام دنیا!")
label.pack()
root.mainloop()
در این کد، ما یک برچسب (label) به پنجره اضافه کردهایم. این برچسب، متن “سلام دنیا!” را نمایش میدهد.
ویژگیهای برچسب
برچسبها ویژگیهای مختلفی دارند که میتوانید از آنها استفاده کنید. برخی از این ویژگیها عبارتند از:
- text: متن برچسب
- font: فونت برچسب
- color: رنگ برچسب
برای مثال، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
label = tk.Label(root, text="سلام دنیا!", font=("Arial", 24), fg="blue")
label.pack()
root.mainloop()
در این کد، ما فونت برچسب را به Arial با اندازه 24 و رنگ آن را به آبی تغییر دادهایم.
افزودن دکمه به پنجره
دکمهها یکی از عناصر مهم در برنامههای گرافیکی هستند. برای افزودن یک دکمه به پنجره، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
def button_click():
print("دکمه کلیک شد!")
button = tk.Button(root, text="کلیک کن!", command=button_click)
button.pack()
root.mainloop()
در این کد، ما یک دکمه به پنجره اضافه کردهایم. وقتی دکمه کلیک شود، تابع `button_click` اجرا خواهد شد و پیامی در کنسول چاپ خواهد شد.
ساخت پنجره با جعبه متن
جعبههای متن یکی دیگر از عناصر مهم در برنامههای گرافیکی هستند. برای افزودن یک جعبه متن به پنجره، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
entry = tk.Entry(root)
entry.pack()
def button_click():
text = entry.get()
print("شما تایپ کردید:", text)
button = tk.Button(root, text="کلیک کن!", command=button_click)
button.pack()
root.mainloop()
در این کد، ما یک جعبه متن به پنجره اضافه کردهایم. وقتی دکمه کلیک شود، متن داخل جعبه متن به کنسول چاپ خواهد شد.
ساخت پنجره با لیست
لیستها میتوانند برای نمایش فهرستی از موارد استفاده شوند. برای افزودن یک لیست به پنجره، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
listbox = tk.Listbox(root)
listbox.pack()
listbox.insert(tk.END, "مورد اول")
listbox.insert(tk.END, "مورد دوم")
listbox.insert(tk.END, "مورد سوم")
root.mainloop()
در این کد، ما یک لیست به پنجره اضافه کردهایم و سه مورد به آن افزودهایم.
ساخت پنجره با چک باکس
چک باکسها میتوانند برای انتخاب موارد استفاده شوند. برای افزودن یک چک باکس به پنجره، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
var = tk.IntVar()
checkbox = tk.Checkbutton(root, text="انتخاب کنید!", variable=var)
checkbox.pack()
root.mainloop()
در این کد، ما یک چک باکس به پنجره اضافه کردهایم.
ساخت پنجره با رادیو باتن
رادیو باتنها میتوانند برای انتخاب یکی از چند گزینه استفاده شوند. برای افزودن یک رادیو باتن به پنجره، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
var = tk.StringVar()
radiobutton1 = tk.Radiobutton(root, text="گزینه اول", variable=var, value="گزینه اول")
radiobutton1.pack()
radiobutton2 = tk.Radiobutton(root, text="گزینه دوم", variable=var, value="گزینه دوم")
radiobutton2.pack()
root.mainloop()
در این کد، ما دو رادیو باتن به پنجره اضافه کردهایم.
ساخت پنجره با منو
منوها میتوانند برای دسترسی به گزینههای مختلف برنامه استفاده شوند. برای افزودن یک منو به پنجره، کد زیر را بنویسید:
import tkinter as tk
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
menubar = tk.Menu(root)
filemenu = tk.Menu(menubar, tearoff=0)
filemenu.add_command(label="باز کردن", command=lambda: print("باز کردن"))
filemenu.add_command(label="ذخیره کردن", command=lambda: print("ذخیره کردن"))
filemenu.add_separator()
filemenu.add_command(label="خروج", command=root.quit)
menubar.add_cascade(label="فایل", menu=filemenu)
root.config(menu=menubar)
root.mainloop()
در این کد، ما یک منو به پنجره اضافه کردهایم.
ساخت پنجره با پیام
پیامها میتوانند برای نمایش پیامهای مختلف به کاربر استفاده شوند. برای افزودن یک پیام به پنجره، کد زیر را بنویسید:
import tkinter as tk
from tkinter import messagebox
root = tk.Tk()
root.title("پنجره ساده")
root.geometry("300x200")
def show_message():
messagebox.showinfo("پیام", "سلام دنیا!")
button = tk.Button(root, text="نمایش پیام", command=show_message)
button.pack()
root.mainloop()
در این کد، ما یک پیام به پنجره اضافه کردهایم.
نتیجهگیری
امیدوارم این آموزش به شما کمک کرده باشد تا با ساخت پنجرههای ساده با tkinter در پایتون آشنا شوید. tkinter یک کتابخانه قدرتمند است که به شما کمک میکند تا برنامههای گرافیکی کاربرپسند ایجاد کنید.