شنبه ۴ اسفند ۱۴۰۳
Tut24 آموزش برنامه نویسی و مجله تخصصی فناوری ورود/عضویت

آموزش پایتون - 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()

زمانی که کد بالا اجرا می‌شود، نتیجه‌ی زیر تولید می‌شود −

پنجره‌ی زبانه‌دار TK