PyGTK - Arrow 箭头类
gtk.Arrow 对象用于绘制指向四个主要方向的简单箭头。 此类继承自 gtk.Misc 类,对象将占用分配给它的任何空间,例如,Label 或 Button 小部件。
通常,Arrow 对象是使用以下构造函数创建的 −
Arr = gtk.Arrow(arrow_type, shadow_type)
预定义的 arrow_type 常量是 −
- gtk.ARROW_UP
- gtk.ARROW_DOWN
- gtk.ARROW_LEFT
- gtk.ARROW_RIGHT
预定义的shadow_type常量如下表所示 −
gtk.SHADOW_NONE | 没有轮廓 |
gtk.SHADOW_IN | 轮廓向内倾斜。 |
gtk.SHADOW_OUT | 轮廓像按钮一样向外倾斜。 |
gtk.SHADOW_ETCHED_IN | 轮廓本身是向内倾斜的,但框架是向外倾斜的。 |
gtk.SHADOW_ETCHED_OUT | 轮廓是向外倾斜的,框架是向内倾斜的。 |
示例
在下面的示例中,四个 Button 小部件被添加到一个 Hbox。 在每个按钮的顶部,放置一个分别指向上、下、左和右的 gtk.Arrow 对象。 HBOX 容器在 Alignment 容器的帮助下放置在顶层窗口的底部。
观察下面的代码 −
import gtk class PyApp(gtk.Window): def __init__(self): super(PyApp, self).__init__() self.set_title("Arrow Demo") self.set_size_request(300, 200) self.set_position(gtk.WIN_POS_CENTER) vbox = gtk.VBox(False, 5) hbox = gtk.HBox(True, 3) valign = gtk.Alignment(0, 1, 0, 0) vbox.pack_start(valign) arr1 = gtk.Arrow(gtk.ARROW_UP, gtk.SHADOW_NONE) arr2 = gtk.Arrow(gtk.ARROW_DOWN, gtk.SHADOW_NONE) arr3 = gtk.Arrow(gtk.ARROW_LEFT, gtk.SHADOW_NONE) arr4 = gtk.Arrow(gtk.ARROW_RIGHT, gtk.SHADOW_NONE) btn1 = gtk.Button() btn1.add(arr1) btn2 = gtk.Button() btn2.add(arr2) btn3 = gtk.Button() btn3.add(arr3) btn4 = gtk.Button() btn4.add(arr4) hbox.add(btn1) hbox.add(btn2) hbox.add(btn3) hbox.add(btn4) halign = gtk.Alignment(0.5, 0.5, 0, 0) halign.add(hbox) vbox.pack_start(halign, False, True, 10) self.add(vbox) self.connect("destroy", gtk.main_quit) self.show_all() PyApp() gtk.main()
上面的代码会产生如下输出 −