tkProgressBar             package:tcltk             R Documentation

Progress Bars via Tk

Description:

     Put up a Tk progress bar widget.

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, ...)

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:

     'txtProgressBar'

Examples:

     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)

