PyGTK - बटनबॉक्स क्लास

Gtk एपीआई में बटनबॉक्स वर्ग कंटेनर के लिए एक आधार वर्ग के रूप में कई बटन रखने के लिए क्षैतिज या लंबवत रूप से कार्य करता है। दो सबक्लास HButtonBox और VButtonBox बटनबॉक्स क्लास से ली गई हैं, जो खुद gtk.Box क्लास का सबक्लास है।

एक बटन बॉक्स का उपयोग पूरे एप्लिकेशन के लिए एक सुसंगत लेआउट प्रदान करने के लिए किया जाता है। यह एक डिफ़ॉल्ट लेआउट और एक डिफ़ॉल्ट रिक्ति मूल्य प्रदान करता है जो सभी विगेट्स पर लगातार बना रहता है।

set_spacing() gtk.Box क्लास की विधि का उपयोग बटन बॉक्स में बटन के बीच डिफ़ॉल्ट रिक्ति को बदलने के लिए किया जा सकता है।

बटन के डिफ़ॉल्ट लेआउट को इसके द्वारा बदला जा सकता है set_default()तरीका। बटन लेआउट के संभावित मूल्य हैं -

  • gtk.BUTTONBOX_SPREAD

  • gtk.BUTTONBOX_EDGE

  • gtk.BUTTONBOX_START

  • gtk.BUTTONBOX_END.

उदाहरण

निम्नलिखित उदाहरण में, आंतरिक विंडो के अंदर VBox ऑब्जेक्ट में आंतरिक रूप से एक VButtonBox ऑब्जेक्ट और एक HButtonBox ऑब्जेक्ट होता है, जिसमें से प्रत्येक में दो बटन होते हैं, जो क्रमशः लंबवत और क्षैतिज रूप से व्यवस्थित होते हैं।

कोड का निरीक्षण करें -

import gtk

class PyApp(gtk.Window):
   def __init__(self):
      super(PyApp, self).__init__()
      
	  self.set_title("Button Box demo")
      self.set_size_request(200,100)
      self.set_position(gtk.WIN_POS_CENTER)
	  vb = gtk.VBox()
      box1 = gtk.VButtonBox()
      btn1 = gtk.Button(stock = gtk.STOCK_OK)
      btn2 = gtk.Button(stock = gtk.STOCK_CANCEL)
		
      box1.pack_start(btn1, True, True, 0)
      box1.pack_start(btn2, True, True, 0)
      box1.set_border_width(5)
		
      vb.add(box1)
      box2 = gtk.HButtonBox()
      btn3 = gtk.Button(stock = gtk.STOCK_OK)
      btn4 = gtk.Button(stock = gtk.STOCK_CANCEL)
		
      ent = gtk.Entry()
      box2.pack_start(btn3, True, True, 0)
      box2.pack_start(btn4, True, True, 0)
      box1.set_border_width(5)
		
      vb.add(box2)
      self.add(vb)
      self.show_all()

PyApp()
gtk.main()

उपरोक्त कोड निम्नलिखित आउटपुट उत्पन्न करता है -