Ruby/TK - 笔记本小部件


NoteBook 小部件提供了一个笔记本比喻,可以在有限的空间内显示多个窗口。笔记本被分成一堆页面,任何时候都只显示其中一页。

可以通过选择小部件顶部的可视选项卡来选择其他页面。此外,<Tab>键可用于遍历页面。如果使用下划线选项, Alt 绑定也将起作用。

句法

这是创建此小部件的简单语法 -

Tk::Tile::Notebook.new(root) {
   .....Standard Options....
   .....Widget Specific Options....
}

标准选项

  • 班级
  • 光标
  • 状态
  • 风格
  • 聚焦

小部件特定选项

先生。 选项和说明
1

高度=> 整数

如果存在且大于零,则指定窗格区域所需的高度(不包括内部填充或选项卡)。否则,将使用所有窗格的最大高度。

2

填充=>整数

指定在笔记本外部添加的额外空间量。填充是左上右下最多四个长度规格的列表。如果指定的元素少于四个,则bottom默认为topright默认为lefttop默认为left

3

宽度=> 整数

如果存在且大于零,则指定窗格区域所需的宽度(不包括内部填充)。否则,将使用所有窗格的最大宽度。

操作笔记本

有多种方式可以玩笔记本 -

  • 笔记本上的每个页面通常都是一个框架,是笔记本本身的直接子窗口(子窗口)。使用“添加子窗口?选项值...?方法将新页面及其关联选项卡添加到选项卡列表的末尾。

  • 文本选项卡选项用于设置选项卡上的标签;状态选项卡选项也很有用,它的值可以是normaldisabled(不可选择)或hidden

  • 要在列表末尾以外的位置插入选项卡,您可以使用“插入位置子窗口?选项值...?,并删除给定的选项卡,使用忘记方法,将其传递给位置(0 ..n-1) 或选项卡的子窗口。您可以通过tabs方法检索笔记本中包含的所有子窗口的列表。

  • 要检索当前选定的子窗口,请调用selected方法,并通过调用select方法更改选定的选项卡,将选项卡的位置或子窗口本身作为参数传递给它。

  • 要更改选项卡选项,您可以使用“itemconfigure tabid, :option => value”方法。其中tabid是选项卡的位置或子窗口。您可以使用“itemcget tabid, :option”返回选项的当前值。

例子

require 'tk'
require 'tkextlib/tile'

root = TkRoot.new
root.title = "Window"

n = Tk::Tile::Notebook.new(root)do
   height 110
   place('height' => 100, 'width' => 200, 'x' => 10, 'y' => 10)
end

f1 = TkFrame.new(n)
f2 = TkFrame.new(n)
f3 = TkFrame.new(n)

n.add f1, :text => 'One', :state =>'disabled'
n.add f2, :text => 'Two'
n.add f3, :text => 'Three'

Tk.mainloop

这将产生以下结果 -

Ruby/Tk 笔记本
ruby_tk_guide.htm