آموزش کامل tkinter | جلسه سوم: مدیریت جای‌گیری ویجت‌ها در Tkinter

pack، grid و place

🎯 هدف جلسه:

یاد بگیریم چطور ویجت‌ها رو در پنجره مرتب کنیم و به دلخواه در جای مناسب قرار بدیم.

سه روش اصلی جای‌گیری در Tkinter وجود داره:

pack ساده‌ترین، ویجت‌ها پشت سر هم قرار می‌گیرند (بالا، پایین، چپ، راست).
grid ویجت‌ها در جدول (ردیف و ستون) چیده می‌شوند.
place کنترل دقیق مختصات (x,y) و اندازه ویجت.

۱. متد pack()

این متد ویجت‌ها را پشت سر هم قرار می‌دهد.

پارامترهای مهم pack:

side: جهت قرارگیری (top, bottom, left, right) — پیش‌فرض top
fill: پر کردن فضای اضافه (x, y, both)
expand: با مقدار True باعث می‌شود ویجت فضای بیشتری بگیرد
padx, pady: فاصله از اطراف

۲. متد grid()

برای چیدمان ویجت در قالب جدول استفاده می‌شود.

نکات مهم grid:

row و column موقعیت سلول
می‌توان ویجت را در چند ردیف یا ستون گسترش داد با rowspan و columnspan

۳. متد place()

کنترل دقیق با مختصات (x, y) و اندازه

تمرین جلسه سوم:

۱. سه Label با متون دلخواه بساز و با هر سه متد pack, grid, place آن‌ها را در پنجره قرار بده (هر بار یکی از این روش‌ها را تست کن).
۲. با پارامترهای side, padx, pady, row, column و x, y بازی کن و ببین چه تغییری ایجاد می‌شود.

روش دوم: grid

روش سوم: place

نکات مهم جلسه سوم:

۱. متد pack():

سریع‌ترین و ساده‌ترین روش
ویجت‌ها را پشت سر هم و مطابق جهت side مرتب می‌کند
پارامترهای مهم:

side (top, bottom, left, right)
padx, pady (فاصله اطراف)
expand و fill برای پر کردن فضای خالی

۲. متد grid():

ویجت‌ها را در جدول با ردیف و ستون مرتب می‌کند
بسیار کاربردی برای فرم‌ها و چیدمان پیچیده
می‌توان ویجت‌ها را با rowspan و columnspan بزرگ‌تر کرد
حتماً همه ویجت‌ها یا با grid جای‌گذاری شوند یا با pack، ترکیب آنها باعث ارور می‌شود.

۳. متد place():

کنترل کامل روی مکان دقیق و اندازه ویجت‌ها
مختصات x و y پیکسل در پنجره
برای طراحی‌های خیلی دقیق یا سفارشی مناسب است

۴. نکته مهم:

نباید همزمان از pack و grid برای ویجت‌های داخل یک والد (مثل root) استفاده کرد.

” لطفا سوالات خود را با ذکر عنوان مقاله ارسال کنید. تیم خانه رباتیک ایران در کنار شماست. “

آماده سازی فرم
لطفا صبر کنید

فرم ساز آسان

شعبه ساری:  خیابان مهدیه، نبش بهمن شرقی

  • شماره تماس: ۰۹۱۱۷۱۲۹۸۶۴

  • اینستاگرام: khanerobotic

شعبه بابل: پل کارگر به سمت کشوری، روبروی ماکروویو، جنب فروشگاه جانبو

  • شماره تماس: ۰۱۱۳۲۲۲۳۹۲۹ و ۰۹۱۱۹۵۱۴۸۸۲

  • اینستاگرام: salam.electronic

شعبه قائم شهر: خیابان ساری، بین یاس ۲۰ و ۲۲

  • شماره تماس: ۰۹۱۱۷۴۵۵۹۷۲

  • اینستاگرام: salam.electronic