概述
固定容器 Fixed Container
固定容器(The Fixed container)允许将构件放在窗口的固定位置,这个位置是相对于固定容器的左上角的。构件的位置可以动态改变。
只有少数几个与固定容器构件相关的函数:
GtkWidget* gtk_fixed_new( void );
void gtk_fixed_put( GtkFixed *fixed,
GtkWidget *widget,
gint x,
gint y );
void gtk_fixed_move( GtkFixed *fixed,
GtkWidget *widget,
gint x,
gint y );
gtk_fixed_new() 函数用于创建新的固定容器。
gtk_fixed_put() 函数将widget放在fixed的由x和y指定的位置。
gtk_fixed_move() 函数将指定构件移动到新位置。
#!/usr/bin/env python
# example fixed.py
import pygtk
pygtk.require('2.0')
import gtk
class FixedExample:
# This callback method moves the button to a new position
# in the Fixed container.
def move_button(self, widget):
self.x = (self.x+30)%300
self.y = (self.y+50)%300
self.fixed.move(widget, self.x, self.y)
def __init__(self):
self.x = 50
self.y = 50
# Create a new window
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.set_title("Fixed Container")
# Here we connect the "destroy" event to a signal handler
window.connect("destroy", lambda w: gtk.main_quit())
# Sets the border width of the window.
window.set_border_width(10)
# Create a Fixed Container
self.fixed = gtk.Fixed()
window.add(self.fixed)
self.fixed.show()
for i in range(1, 4):
# Creates a new button with the label "Press me"
button = gtk.Button("Press me")
# When the button receives the "clicked" signal, it will call the
# method move_button().
button.connect("clicked", self.move_button)
# This packs the button into the fixed containers window.
self.fixed.put(button, i*50, i*50)
# The final step is to display this newly created widget.
button.show()
# Display the window
window.show()
def main():
# Enter the event loop
gtk.main()
return 0
if __name__ == "__main__":
FixedExample()
main()
最后
以上就是想人陪萝莉为你收集整理的pygtk-Fixed Container的全部内容,希望文章能够帮你解决pygtk-Fixed Container所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复