butGeom2.tcl
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:4k
源码类别:

通讯编程

开发平台:

Visual C++

  1. # This file creates a visual test for button layout.  It is part of
  2. # the Tk visual test suite, which is invoked via the "visual" script.
  3. #
  4. # RCS: @(#) $Id: butGeom2.tcl,v 1.3 1999/04/16 01:51:34 stanton Exp $
  5. catch {destroy .t}
  6. toplevel .t
  7. wm title .t "Visual Tests for Button Geometry"
  8. wm iconname .t "Button Geometry"
  9. wm geom .t +0+0
  10. wm minsize .t 1 1
  11. label .t.l -text {This screen exercises the color options for various flavors of buttons.  Select display options below, and they will be applied to the appropiate button widgets.} -wraplength 5i
  12. pack .t.l -side top -fill both
  13. button .t.quit -text Quit -command {destroy .t}
  14. pack .t.quit -side bottom -pady 2m
  15. set sepId 1
  16. proc sep {} {
  17.     global sepId
  18.     frame .t.sep$sepId -height 2 -bd 1 -relief sunken
  19.     pack .t.sep$sepId -side top -padx 2m -pady 2m -fill x
  20.     incr sepId
  21. }
  22. # Create buttons that control configuration options.
  23. frame .t.control
  24. pack .t.control -side top -fill x -pady 3m
  25. frame .t.control.left
  26. frame .t.control.right
  27. pack .t.control.left .t.control.right -side left -expand 1 -fill x
  28. label .t.anchorLabel -text "Color:"
  29. frame .t.control.left.f -width 6c -height 3c
  30. pack .t.anchorLabel .t.control.left.f -in .t.control.left -side top -anchor w
  31. foreach opt {activebackground activeforeground background disabledforeground foreground highlightbackground highlightcolor } {
  32.     #button .t.color-$opt -text $opt -command "config -$opt [tk_chooseColor]"
  33.     menubutton .t.color-$opt -text $opt -menu .t.color-$opt.m -indicatoron 1 
  34.         -relief raised -bd 2 
  35.     menu .t.color-$opt.m -tearoff 0
  36.     .t.color-$opt.m add command -label Red -command "config -$opt red"
  37.     .t.color-$opt.m add command -label Green -command "config -$opt green"
  38.     .t.color-$opt.m add command -label Blue -command "config -$opt blue"
  39.     .t.color-$opt.m add command -label Other... 
  40.           -command "config -$opt [tk_chooseColor]"
  41.     pack .t.color-$opt -in .t.control.left.f -fill x
  42. }
  43. set default disabled
  44. label .t.default -text Default:
  45. radiobutton .t.default-normal -text "Default normal" -relief flat 
  46. -command "config-but -default normal" -variable default 
  47. -value normal
  48. radiobutton .t.default-active -text "Default active" -relief flat 
  49. -command "config-but -default active" -variable default 
  50. -value active
  51. radiobutton .t.default-disabled -text "Default disabled" -relief flat 
  52. -command "config-but -default disabled" -variable default 
  53. -value disabled
  54. pack .t.default .t.default-normal .t.default-active .t.default-disabled 
  55. -in .t.control.right -anchor w
  56. sep
  57. frame .t.f1
  58. pack .t.f1 -side top -expand 1 -fill both
  59. sep
  60. frame .t.f2
  61. pack .t.f2 -side top -expand 1 -fill both
  62. sep
  63. frame .t.f3
  64. pack .t.f3 -side top -expand 1 -fill both
  65. sep
  66. frame .t.f4
  67. pack .t.f4 -side top -expand 1 -fill both
  68. sep
  69. label .t.l1 -text Label -bd 2 -relief sunken
  70. label .t.l2 -text "Explicitnnewlinesnnin the text" -bd 2 -relief sunken
  71. label .t.l3 -text "This text is quite long, so it must be wrapped automatically by Tk" -wraplength 2i -bd 2 -relief sunken -underline 50
  72. pack .t.l1 .t.l2 .t.l3 -in .t.f1 -side left -padx 5m -pady 3m 
  73. -expand y -fill both
  74. button .t.b1 -text Button
  75. button .t.b2 -text "Explicitnnewlinesnnin the text"
  76. button .t.b3 -text "This text is quite long, so it must be wrapped automatically by Tk" -wraplength 2i -underline 50
  77. pack .t.b1 .t.b2 .t.b3 -in .t.f2 -side left -padx 5m -pady 3m 
  78. -expand y -fill both
  79. checkbutton .t.c1 -text Checkbutton -variable a
  80. checkbutton .t.c2 -text "Explicitnnewlinesnnin the text" -variable b
  81. checkbutton .t.c3 -text "This text is quite long, so it must be wrapped automatically by Tk" -wraplength 2i -variable c -underline 50
  82. pack .t.c1 .t.c2 .t.c3 -in .t.f3 -side left -padx 5m -pady 3m 
  83. -expand y -fill both
  84. radiobutton .t.r1 -text Radiobutton -value a
  85. radiobutton .t.r2 -text "Explicitnnewlinesnnin the text" -value b
  86. radiobutton .t.r3 -text "This text is quite long, so it must be wrapped automatically by Tk" -wraplength 2i -value c -underline 50
  87. pack .t.r1 .t.r2 .t.r3 -in .t.f4 -side left -padx 5m -pady 3m 
  88. -expand y -fill both
  89. proc config {option value} {
  90.     foreach w {.t.l1 .t.l2 .t.l3 .t.b1 .t.b2 .t.b3 .t.c1 .t.c2 .t.c3
  91.     .t.r1 .t.r2 .t.r3} {
  92. catch {$w configure $option $value}
  93.     }
  94. }
  95. proc config-but {option value} {
  96.     foreach w {.t.b1 .t.b2 .t.b3} {
  97. $w configure $option $value
  98.     }
  99. }