Posted to tcl by de at Wed Jun 15 23:36:04 GMT 2011view raw
- package require Tk
- package require snit
- package require BWidget
- namespace eval ::wtk { }
- rename button ::wtk::button
- snit::widgetadaptor button {
- constructor {args} {
- installhull using ::wtk::button
- $self configurelist $args
- }
- delegate method * to hull
- delegate option * to hull
- }
- proc cancelCmd {} {
- puts "You hit cancel"
- }
- proc useProgressDlg {} {
- global nrOfDone
- set nrOfDone 0
- ProgressDlg .progressbar \
- -maximum 100 \
- -variable nrOfDone \
- -textvariable nrOfDone \
- -stop Cancel \
- -command cancelCmd
- for {set nrOfDone 0} {$nrOfDone <= 100} {incr nrOfDone} {
- after 10
- update idletasks
- }
- destroy .progressbar
- .b configure -text "Click again"
- }
- button .b -text "Click button" -command useProgressDlg
- pack .b