Ruby/TK - Toplevel Widget
说明
Toplevel 类似于框架,只是它被创建为顶级窗口。 它的 X 父级是屏幕的根窗口,而不是其路径名的逻辑父级。
顶层的主要目的是充当对话框和其他小部件集合的容器。 顶层唯一可见的特征是它的背景颜色和一个可选的 3-D 边框,以使顶层看起来凸起或凹陷。
语法
这是创建此小部件的简单语法 −
TkToplevel.new(root) { .....Standard Options.... .....Widget Specific Options.... }
标准选项
- borderwidth
- cursor
- highlightbackground
- highlightcolor
- highlightthickness
- relief
- takefocus
这些选项已在前一章中描述。
小部件特定选项
序号 | 选项 & 描述 |
---|---|
1 | background => String 此选项与标准 background 选项相同,只是它的值也可以指定为空字符串。 在这种情况下,小部件将不显示背景或边框,并且不会从其颜色图中为背景和边框消耗任何颜色。 |
2 | class => String 指定窗口的类。 该类将在查询选项数据库以获取窗口的其他选项时使用,并且稍后还将用于其他目的,例如绑定。 class 选项不能用 configure 方法更改。 |
3 | colormap => String 指定用于窗口的颜色图。 该值可以是 new,在这种情况下会为窗口及其子窗口创建新的颜色图,也可以是另一个窗口的名称。 |
4 | height => Integer 指定窗口的所需高度。 |
5 | width => Integer 指定所需的窗口宽度。 |
事件绑定
创建新的顶层时,它没有默认的事件绑定:顶层不是交互式的。
示例
require 'tk' def make_win begin $win.destroy rescue end $win = TkToplevel.new TkButton.new($win) { text 'Window Dismiss' command "$win.destroy" pack } end TkButton.new { text 'make Window' command 'make_win' pack('fill' => 'x') } Tk.mainloop
这将产生以下结果 −