Ruby/TK - ProgressBar 进度条小部件

说明

ProgressBar 提供了一个小部件,它将显示一个值的图形表示,给定最大和最小参考值。

语法

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

Tk::ProgressBar.new(root) {
   .....Standard Options....
   .....Widget-specific Options....
}

标准选项

  • borderwidth
  • highlightthickness
  • padx
  • pady
  • relief
  • troughcolor

这些选项已在前一章中描述。


小部件特定选项

序号 选项 & 描述
1

anchor => String

这可用于定位条形的起点。 默认为"w"(从左侧开始的水平条)。 可以使用"s"或"n"来配置垂直条。

2

blocks => Integer

这控制用于构建进度条的块数。 默认是将条分成 10 个块。

3

colors => String

控制用于进度条不同位置的颜色。

4

from => Integer

这设置了进度条的下限。 如果条形设置为低于下限的值,则不会显示条形。 默认为 0。

5

gap => Integer

这是每个块之间的间距(以像素为单位)。 默认为 1。使用 0 获得连续条。

6

length => Integer

以屏幕单位指定 ProgressBar 所需的长尺寸。

7

resolution => Integer

指定比例分辨率的实数值。 如果该值大于零,则刻度的值将始终舍入为该值的偶数倍,刻度线和刻度的端点也是如此。 默认为 1。

8

to => Integer

这设置了进度条的上限。 如果指定的值(例如,使用 value 方法)高于该值,则将显示完整的进度条。 默认为 100。

9

variable => Variable

指定对标量变量的引用以链接到 ProgressBar。 每当变量的值发生变化时,ProgressBar 都会更新以反映该值。

10

value => Integer

与标准 configure 结合使用时,可用于设置进度条的当前位置。 通常建议改用 value 方法。

11

width => Integer

以屏幕单位指定 ProgressBar 所需的窄尺寸


操作进度条

您可以使用 value(?value?) 方法和 ProgressBar 实例来获取 ProgressBar 的当前值。 如果给定 value,则设置 ProgressBar 的值。

示例

require 'tk'
require 'tkextlib/bwidget'

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

progressBar = Tk::BWidget::ProgressBar.new(root)

variable = TkVariable.new
progressBar.variable = variable

variable.value = 33

progressBar.maximum = 100
progressBar.place('height' => 25, 'width'  => 100, 'x'      => 10, 'y'      => 10)

Tk.mainloop

这将产生以下结果 −

Ruby/Tk Progress Bar

❮ Ruby Tk 指南