3 # Create a top-level window that displays a basic text widget.
6 # w - Name to use for new top-level window.
8 proc mkBasic
{{w .basic
}} {
12 wm title
$w "Text Demonstration - Basic Facilities"
13 wm iconname
$w "Text Basics"
14 button $w.ok
-text OK
-command "destroy $w"
15 text $w.t
-relief raised
-bd 2 -yscrollcommand "$w.s set" -setgrid true
16 scrollbar $w.s
-relief flat
-command "$w.t yview"
17 pack append $w $w.ok
{bottom fillx
} $w.s
{right filly
} $w.t
{expand fill
}
19 This window is a
text widget. It displays one or more lines of
text
20 and allows you to edit the
text. Here is a summary of the things you
21 can do to a
text widget
:
23 1. Scrolling. Use the
scrollbar to adjust the view in the
text window.
25 2. Scanning. Press mouse
button 2 in the
text window and drag up or down.
26 This will drag the
text at high speed to allow you to
scan its contents.
28 3. Insert
text. Press mouse
button 1 to
set the insertion cursor
, then
29 type
text. What you type will be added to the widget. You can backspace
30 over what you've typed using either the backspace key
, the delete key
,
33 4. Select. Press mouse
button 1 and drag to select a range of characters.
34 Once you've released the
button, you can adjust the
selection by pressing
35 button 1 with the shift key down. This will reset the end of the
36 selection nearest the mouse cursor and you can drag that end of the
37 selection by dragging the mouse before releasing the mouse
button.
38 You can double-click to select whole words
, or triple-click to select
41 5. Delete. To delete
text, select the characters you'd like to delete
44 6. Copy the
selection. To copy the
selection either from this window
45 or from any other window or application
, select what you want
, click
46 button 1 to
set the insertion cursor
, then type Control
+v to copy the
47 selection to the point of the insertion cursor.
49 7. Resize the window. This widget has been configured with the
"setGrid"
50 option on
, so that
if you resize the window it will always resize to an
51 even number of characters high and wide. Also
, if you make the window
52 narrow you can see that long lines automatically wrap around onto
53 additional lines so that all the information is always visible.
55 When you're finished with this demonstration
, press the
"OK" button
57 $w.t mark
set insert
0.0
58 bind $w <Any-Enter
> "focus $w.t"