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 class 'tkProgressBar':
close(con, \dots)
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
andsetTkProgressBar
, a length-one numeric vector giving the previous value (invisibly forsetTkProgressBar
).
See Also
txtProgressBar
#ifdef windows
winProgressBar
for a version using Windows native
controls (which this also does for Tk >= 8.5).
#endif
Examples
library(tcltk)
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)