tkProgressBar
Progress Bars via Tk
Put up a Tk progress bar widget.
- Keywords
- utilities
Usage
tkProgressBar(title = "R progress bar", label = "",
min = 0, max = 1, initial = 0, width = 300)getTkProgressBar(pb)
setTkProgressBar(pb, value, title = NULL, label = NULL)
# S3 method for tkProgressBar
close(con, …)
Arguments
- title, label
character strings, giving the window title and the label on the dialog box respectively.
- min, max
(finite) numeric values for the extremes of the progress bar.
- initial, value
initial or new value for the progress bar.
- width
the width of the progress bar in pixels: the dialog box will be 40 pixels wider (plus frame).
- pb, con
an object of class
"tkProgressBar"
.- …
for consistency with the generic.
Details
tkProgressBar
will display a widget containing a label and
progress bar.
setTkProgessBar
will update the value and for non-NULL
values, the title and label (provided there was one when the widget
was created). Missing (NA
) and out-of-range values of
value
will be (silently) ignored.
The progress bar should be close
d when finished with.
This will use the ttk::progressbar
widget for Tk version 8.5 or
later, otherwise R's copy of BWidget's progressbar
.
Value
For tkProgressBar
an object of class "tkProgressBar"
.
For getTkProgressBar
and setTkProgressBar
, a
length-one numeric vector giving the previous value (invisibly for
setTkProgressBar
).
See Also
winProgressBar
for a version using Windows native
controls (which this also does for Tk >= 8.5).
Examples
library(tcltk)
# NOT RUN {
<!-- % popups are irritating -->
pb <- tkProgressBar("test progress bar", "Some information in %",
0, 100, 50)
Sys.sleep(0.5)
u <- c(0, sort(runif(20, 0, 100)), 100)
for(i in u) {
Sys.sleep(0.1)
info <- sprintf("%d%% done", round(i))
setTkProgressBar(pb, i, sprintf("test (%s)", info), info)
}
Sys.sleep(5)
close(pb)
# }