Установить положение изображения в окне, используя pygtk - PullRequest
1 голос
/ 13 сентября 2010

Можно ли установить положение изображения с помощью pygtk?

import pygtk
import gtk

class Example:
    self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
    self.image = gtk.Image()
    self.image.set_from_file("example.png")
    # Position goes here (it should, shouldn't it?)
    self.window.add(self.image)
    self.image.show()
    self.window.fullscreen()
    self.window.show_all()

1 Ответ

1 голос
/ 13 сентября 2010

GTK размещает виджеты на основе относительных выравниваний и отступов, а не абсолютных положений пикселей.Экземпляры gtk.Image имеют свойства xalign, xpad, yalign, ypad, которые можно использовать для позиционирования виджета, если у родителя больше места, чем необходимо.

Например,

self.image.xalign = 0.5
self.image.yalign = 0.5

будетцентрирование изображения в окне

self.image.xalign = 0
self.image.yalign = 0

поместит изображение в верхнем левом углу

self.image.xalign = 1
self.image.yalign = 1

поместит изображение в левом нижнем углу

Если вы действительно хотитечтобы иметь дело с фиксированными позициями, вам нужно использовать виджет gtk.Fixed.Позволяет указать явную позицию при добавлении потомка методом put(child, x, y).Обратите внимание на предупреждение в документации, что это плохая идея, которая может привести к поломке пользовательского интерфейса.

...