Pencere Boyutunu Ayarlamak
PyGTK ile oluşturduğumuz pencerelerin boyutunu belirlemek için resize() adlı metodu kullanıyoruz. Hemen basit bir örnek yapalım.
import pygtk
pygtk.require20()
import gtk
class Program(object):
def __init__(self):
self.pencere = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.pencere.set_title("Merhaba Dunya")
self.pencere.connect("delete_event", gtk.main_quit)
self.pencere.resize(300,300)
self.pencere.set_position(gtk.WIN_POS_CENTER)
self.pencere.show()
def main(self):
gtk.main()
uyg = Program()
uyg.main()
Pencere Konumunu Ayarlamak
PyGTK’da yazdığımız programları çalıştırdığımızda programların sol üst köşede başladığı dikkatinizi çekmiştir. Eğer istersek programların başlayacağı konumu belirleyebiliyoruz. GTK’da bu işlem için set_position() adlı bir metodumuz var. set_position metodu 5 farklı değer alır.
- gtk.WIN_POS_NONE:
- Pencere konumu üzerinde herhangi bir değişiklik yapılmayacağını belirtir.
- gtk.WIN_POS_CENTER:
- Pencereyi ekranın ortasına yerleştirir.
- gtk.WIN_POS_MOUSE:
- Pencere, farenin o anda bulunduğu konumda açılır.
- gtk.WIN_POS_CENTER_ALWAYS:
- Pencerenin boyutu değişse de, pencereyi hep ekranın ortasında tutar.
- gtk.WIN_POS_CENTER_ON_PARENT:
- Eğer ikinci bir pencere varsa bu pencerenin ana pencereyi ortalamasını sağlar.[1]
Basit bir örnek üzerinde kullanımını görelim.
import pygtk
pygtk.require20()
import gtk
class Program(object):
def __init__(self):
self.pencere = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.pencere.set_title("Merhaba Dunya")
self.pencere.connect("delete_event", gtk.main_quit)
self.pencere.resize(300,300)
self.pencere.set_position(gtk.WIN_POS_CENTER)
self.pencere.show()
def main(self):
gtk.main()
uyg = Program()
uyg.main()
Pencerelere Simge Eklemek
PyGTK’da yazdığınız programları çalıştırdığınızda görev çubuğunda belirgin bir simgenin olmadığı canınızı sıkıyorsa o pencereye bir simge eklemenin vakti geldi demektir. GTK’da bu işlem için set_icon_from_file() metodunu kullanıyoruz.
import pygtk
pygtk.require20()
import gtk
class Program(object):
def __init__(self):
self.pencere = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.pencere.connect("delete_event", gtk.main_quit)
self.pencere.set_title("Merhaba Dunya")
self.pencere.set_icon_from_file("simge.png")
self.pencere.resize(300,300)
self.pencere.set_position(gtk.WIN_POS_CENTER)
self.pencere.show()
def main(self):
gtk.main()
uyg = Program()
uyg.main()
Bu şekilde programınıza simge ekleyebilirsiniz dikkat etmeniz gereken nokta ise simge.png’nin program ile aynı dizinde olması gerektiğidir.
Şeffaf Pencereler Oluşturmak
Oluşturduğumuz pencerelerinin şeffaf olmasını istiyorsak set_opacity() adlı metotdan yardım alacağız.
import pygtk
pygtk.require20()
import gtk
class Program(object):
def __init__(self):
self.pencere = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.pencere.set_position(gtk.WIN_POS_CENTER)
self.pencere.resize(300,300)
self.pencere.connect("delete_event", gtk.main_quit)
self.pencere.set_icon_from_file("simge.png")
self.pencere.set_title("Merhaba Dunya")
self.pencere.set_opacity(0.7)
self.pencere.show()
def main(self):
gtk.main()
uyg = Program()
uyg.main()
0.7 değeri penceremizin şeffaflığını belirliyor 0′a yaklaştıkça şeffaflık artacak, 1′e yaklaştıkça azalacaktır.
Boyutlandırılamayan Pencereler Oluşturmak
Bazen yaptığınız programların boyutlandırılamaz olmasını isteyebilirsiniz. Örneğin bir hesap makinesi programında programın boyutlandırabilir olması anlamsız olacaktır. Bu durumlarda devreye set_resizable() metodu giriyor.
import pygtk
pygtk.require20()
import gtk
class Program(object):
def __init__(self):
self.pencere = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.pencere.connect("delete_event", gtk.main_quit)
self.pencere.set_size_request(300, 300)
self.pencere.set_resizable(False)
self.pencere.set_title("Merhaba Dunya")
self.pencere.set_icon_from_file("simge.png")
self.pencere.set_opacity(0.7)
self.pencere.resize(300,300)
self.pencere.set_position(gtk.WIN_POS_CENTER)
self.pencere.show()
def main(self):
gtk.main()
uyg = Program()
uyg.main()
[1] = İstihza


















