آموزش کلاس ToggleButton در PyGTK
![](https://www.sourcebaran.com/learn/wp-content/uploads/2021/09/019-3.jpg)
آموزش کلاس 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
دیدگاه شما