آموزش پایتون - PanedWindow
پنجرهی زبانهدار (PanedWindow) یک ویجت نگهدارنده است که میتواند هر تعداد زبانه را در صفحه به صورت افقی یا عمودی داشته باشد.
هر زبانه شامل یک ویجت است و هر زوج از زبانهها توسط یک تابع جداکننده (sash) قابل حرکت (توسط حرکت ماوس) از هم جدا میشوند. حرکت دادن یک تابع جداکننده باعث تغییر اندازهی ویجتهایی میشود که در هر دو طرف آن قرار دارند.
نحوه نوشتار
اینجا ساختار ایجاد این ویجت آورده شده است −
w = PanedWindow( master, option, ... )
پارامترها
-
master (اصلی) − این نمایشدهندهی پنجرهی والد است.
-
options − در اینجا لیستی از گزینههای معمول استفاده شده برای این ویجت آمده است.
ردیف | گزینه و توضیحات |
---|---|
1 |
bg (زمینه) رنگ اسلایدر و نشانگرها (arrowheads) هنگامی که ماوس بر روی آنها نیست. |
2 |
bd (borderwidth) عرض مرزهای ۳-بعدی در اطراف محیط و همچنین عرض اثرات ۳-بعدی روی نشانگرها و اسلایدر. پیشفرض عدم وجود مرز در اطراف و یک مرز ۲ پیکسلی در اطراف نشانگرها و اسلایدر است. |
3 |
borderwidth (عرضمرز) مقدار پیشفرض ۲ است. |
4 |
cursor (نشانگر) نشانگری که هنگام نگهداشتن ماوس بر روی پنجره ظاهر میشود. |
5 |
handlepad مقدار پیشفرض ۸ است. |
6 |
handlesize (اندازهنشانگر) مقدار پیشفرض ۸ است. |
7 |
height (ارتفاع) بدون مقدار پیشفرض. |
8 |
orient (جهت) مقدار پیشفرض HORIZONTAL (افقی) است. |
9 |
relief مقدار پیشفرض FLAT (صاف) است. |
10 |
sashcursor بدون مقدار پیشفرض. |
11 |
sashrelief مقدار پیشفرض RAISED است. |
12 |
sashwidth مقدار پیشفرض ۲ است. |
13 |
showhandle بدون مقدار پیشفرض. |
14 |
width (عرض) بدون مقدار پیشفرض. |
متدها
اشیاء PanedWindow این متدها را دارند −
ردیف | متدها و توضیحات |
---|---|
1 |
add(child, options) (افزودن) یک پنجرهی فرزند را به پنجرهی زبانهدار اضافه میکند. |
2 |
get(startindex [,endindex]) (گرفتن) این متد یک کاراکتر خاص یا یک محدودهی متن را بازمیگرداند. |
3 |
config(options) (پیکربندی) یک یا چند گزینهی ویجت را اصلاح میکند. اگر هیچ گزینهای داده نشود، این متد یک دیکشنری حاوی تمام مقادیر گزینههای فعلی را بازمیگرداند. |
مثال
مثال زیر را امتحان کنید. به این صورت یک ویجت سه زبانه ایجاد میشود −
from tkinter import *
m1 = PanedWindow()
m1.pack(fill=BOTH, expand=1)
left = Label(m1, text="left pane")
m1.add(left)
m2 = PanedWindow(m1, orient=VERTICAL)
m1.add(m2)
top = Label(m2, text="top pane")
m2.add(top)
bottom = Label(m2, text="bottom pane")
m2.add(bottom)
mainloop()
زمانی که کد بالا اجرا میشود، نتیجهی زیر تولید میشود −