Setting sizes of widgets (PyGTK)

H

Harlin Seritt

I have the following code and I would like to know how to set the
length and width of widgets like Buttons. When the window opens the
button fills up the space even though I have told it not to. Anyone
know how I can accomplish this?

:

import pygtk, gtk

class Greeter:

def __init__(self):

self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.box = gtk.VBox()
self.window.add(self.box)

self.label = gtk.Label("Please enter your name in the box below:")
self.namebox = gtk.Entry(12)
self.button = gtk.Button("Greet Me!")
self.output = gtk.Label("Your output will appear here.")

self.box.pack_start(self.label, False, False, 2)
self.box.pack_start(self.namebox, False, False, 2)
self.box.pack_start(self.button, False, False, 2)
self.box.pack_start(self.output, False, False, 2)

self.label.show()
self.namebox.show()
self.button.show()
self.output.show()
self.box.show()
self.window.show()

def main(self):
gtk.main()

a = Greeter()
a.main()
 
F

Franck Pommereau

Harlin said:
I have the following code and I would like to know how to set the
length and width of widgets like Buttons. When the window opens the
button fills up the space even though I have told it not to.

Your button is stretched horizontally because there is nothing to put
around it in order to fill the space. Try to embed it into a HBox,
surrounded by empty labels :
import pygtk, gtk

class Greeter:
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.box = gtk.VBox()
self.window.add(self.box)
self.label = gtk.Label("Please enter your name in the box below:")
self.namebox = gtk.Entry(12)
self.button = gtk.Button("Greet Me!")
self.output = gtk.Label("Your output will appear here.") hbox = gtk.HBox()
self.box.pack_start(self.label, False, False, 2)
self.box.pack_start(self.namebox, False, False, 2)
hbox.add(gtk.Label())
hbox.pack_start(self.button, False, False, 2)
hbox.add(gtk.Label())
self.box.pack_start(hbox, False, False, 2)
self.box.pack_start(self.output, False, False, 2) self.window.show_all()
def main(self):
gtk.main()

a = Greeter()
a.main()

Cheers,
Franck
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top