آموزش کلاس ToggleButton در PyGTK

آموزش کلاس ToggleButton در PyGTK
در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش کلاس ToggleButton در PyGTK خواهیم پرداخت.
پیشنهاد ویژه : پکیج آموزش طراحی وب سایت با پایتون و جنگو
ویجت ToggleButton یک gtk است. دکمه ای با دو حالت – حالت فشرده یا فعال (یا روشن) و حالت عادی یا غیر فعال (یا خاموش). هر بار که دکمه فشار داده می شود ، حالت متناوب می شود. حالت ToggleButton را نیز می توان از نظر برنامه ای با روش ()set_active تغییر داد. برای تغییر وضعیت دکمه ، روش ()toggled نیز در دسترس است.
کلاس gtk.ToggleButton دارای سازنده زیر است –
1 |
gtk.ToggleButton(label = None, use_underline = True) |
در اینجا، لیبل آزمایشی است که باید روی دکمه نمایش داده شود. ویژگی use_underline ، اگر True باشد ، یک خط زیر در متن نشان می دهد که کاراکتر بعدی باید زیر خط بکشد و برای شتاب دهنده mnemonic استفاده شود.
برخی از روشهای مهم کلاس gtk.ToggleButton در جدول زیر آمده است –
()set_active | این ویژگی فعال را روی مقدار True (فعال یا فشرده یا روشن) یا نادرست (غیر فعال ، عادی یا خاموش) قرار می دهد. |
()get_active | این حالت دکمه را بازیابی می کند |
()toggled | این سیگنال “toggled” را روی دکمه toggleb منتشر می کند. |
ویجت ToggleButton سیگنال زیر را منتشر می کند –
Toggled | این حالت زمانی منتشر می شود که حالت togglebutton یا به صورت برنامه نویسی یا توسط کاربر تغییر می کند. |
کد زیر نشان می دهد که از ویجت های ToggleButton استفاده می کنید.
دو ویجت ToggleButtons و Label در یک ظرف VBox قرار داده شده است. سیگنال متغیر ساطع شده توسط Button1 به یک تابع بازگشت به تماس ()on_toggled متصل است. در این تابع ، اگر Button1 False باشد و برعکس ، حالت Button2 روی True تنظیم می شود.
1 2 3 4 |
if self.btn1.get_active() == True: self.btn2.set_active(False) else: self.btn2.set_active(True) |
این حالت لحظه ای دکمه ها را روی لیبل نمایش می دهد.
مثال
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
import gtk PyApp(gtk.Window): def __init__(self): super(PyApp, self).__init__() self.set_title("Toggle Button") self.set_default_size(250, 200) self.set_position(gtk.WIN_POS_CENTER) vbox = gtk.VBox() self.btn1 = gtk.ToggleButton("Button 1") self.btn1.connect("toggled", self.on_toggled) self.btn2 = gtk.ToggleButton("Button 2") self.lbl = gtk.Label() vbox.add(self.btn1) vbox.add(self.btn2) vbox.add(self.lbl) self.add(vbox) self.connect("destroy", gtk.main_quit) self.show_all() def on_toggled(self, widget, data = None): if self.btn1.get_active() == True: self.btn2.set_active(False) else: self.btn2.set_active(True) state = "Button1 : "+str(self.btn1.get_active())+" Button2 : "+str(self.btn2.get_active()) self.lbl.set_text(state) if __name__ == '__main__': PyApp() gtk.main() |
کد بالا خروجی زیر را تولید می کند –
لیست جلسات قبل آموزش PyGTK
- آموزش PyGTK
- معرفی PyGTK
- آموزش محیط PyGTK
- آموزش Hello World در PyGTK
- آموزش کلاس های مهم در PyGTK
- آموزش کلاس پنجره در PyGTK
- آموزش کلاس دکمه در PyGTK
- آموزش کلاس لیبل در PyGTK
- آموزش کلاس ورود در PyGTK
- آموزش مدیریت سیگنال در PyGTK
- آموزش مدیریت رویداد در PyGTK
- آموزش کانتینر در PyGTK
- آموزش کلاس جعبه در PyGTK
- آموزش کلاس ButtonBox در PyGTK
- آموزش کلاس تراز در PyGTK
- آموزش کلاس EventBox در PyGTK
- آموزش کلاس Layout در PyGTK
- آموزش کلاس ComboBox در PyGTK
دیدگاه شما