📜  PyGTK-标尺类

📅  最后修改于: 2020-11-08 08:05:06             🧑  作者: Mango


这是水平标尺(gtk.Hruler)和垂直标尺(gtk.Vruler)的基类,可用于显示鼠标指针在窗口中的位置。标尺中的小三角形指示指针的位置。

标尺对象使用其各自的构造函数创建-

hrule = gtk.Hruler()
vrule = gtk.Vruler()

以下gtk.Ruler类方法可用于两个派生类-

  • Ruler.set_metric()-设置度量单位。预定义的度量常量是:gtk.PIXELS(默认值),gtk.INCHES和gtk.CENTIMETERS

  • Ruler.set_range()-设置标尺的上下限,位置和最大尺寸。

在下面给出的示例中,水平和垂直标尺位于gtk.TextView小部件的上方和左侧。

水平尺的测量单位为像素。其最小值和最大值分别为0和400。它放置在gtk.VBox的上一行。

hrule = gtk.HRuler()
hrule.set_metric(gtk.PIXELS)
hrule.set_range(0, 4,0,0.5)
vbox.pack_start(hrule)

Vbox的下一行包含一个HBox。包装了垂直标尺和TextView小部件,可以在其中输入多行文本。

vrule=gtk.VRuler()
vrule.set_metric(gtk.PIXELS)
vrule.set_range(0, 4, 10, 0.5)
hbox.pack_start(vrule)

观察以下代码-

import gtk
class PyApp(gtk.Window):
   
   def __init__(self):
      super(PyApp, self).__init__()
      
      self.set_title("Ruler demo")
      self.set_size_request(400,400)
      self.set_position(gtk.WIN_POS_CENTER)
        
      vbox = gtk.VBox()
      tv = gtk.TextView()
      tv.set_size_request(350,350)
        
      hrule = gtk.HRuler()
      hrule.set_metric(gtk.PIXELS)
      hrule.set_range(0, 4,0,0.5)
        
      vbox.pack_start(hrule)
      hbox = gtk.HBox()
      vrule = gtk.VRuler()
        
      vrule.set_metric(gtk.PIXELS)
      vrule.set_range(0, 4, 10, 0.5)
        
      hbox.pack_start(vrule)
      halign = gtk.Alignment(0.5, 0.5, 0, 0)
      halign.add(tv)
        
      hbox.pack_start(halign, False, True, 10)
      vbox.add(hbox)
        
      self.add(vbox)
      self.connect("destroy", gtk.main_quit)
      self.show_all()

PyApp()
gtk.main()

上面程序生成的输出类似于MS Word文档-

标尺演示