File: EntryField.html

package info (click to toggle)
python-pmw 0.6.2-0.1
  • links: PTS
  • area: main
  • in suites: hamm
  • size: 1,652 kB
  • ctags: 2,716
  • sloc: python: 10,720; makefile: 44; sh: 24
file content (238 lines) | stat: -rw-r--r-- 8,232 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238

    <html>
    <head>
    <title>Pmw.EntryField reference manual</title>
    </head>

    <body bgcolor="#ffffff" text="#000000" link="#0000ee"
	vlink="551a8b" alink="ff0000">

    <center><P ALIGN="CENTER">
    <IMG SRC = transdove.gif ALT = "" WIDTH=70 HEIGHT=75>
    <IMG SRC = transdove.gif ALT = "" WIDTH=70 HEIGHT=75>
    <IMG SRC = transdove.gif ALT = "" WIDTH=70 HEIGHT=75>
    </p></center>

    <h1 ALIGN="CENTER">Pmw.EntryField</h1>
    <p>
    
<dl>
<dt> <h3>Name</h3><dd>
<p>Pmw.EntryField() - 
    entry widget with validation
</p>


<dt> <h3>Inherits</h3><dd>
<a href="MegaWidget.html">Pmw.MegaWidget</a><br>
<dt> <h3>Description</h3><dd>
<p>
    This class consists of an entry widget with optional validation
    and an optional upper limit on the number of characters which may
    be entered.  Built-in validation may be used, such as integer,
    real or alphabetic, or an external validation function may be
    supplied.</p>

<p></p>


<dt> <h3>Options</h3><dd>
Options for this megawidget and its base
classes are described below.<p>
<a name=option.command></a>
<dl><dt> <strong>command
</strong><dd>
This specifies a function to call whenever the <strong>&lt;Return&gt;</strong> key is
    pressed or <code>invoke()</code> is called. The default is <strong>None</strong>.</p>


</dt></dl>
<a name=option.errorbackground></a>
<dl><dt> <strong>errorbackground
</strong><dd>
Specifies the background color to use when displaying invalid
    text (that is, when the <strong>validate</strong> function returns <strong>-1</strong>). The default is <strong>'pink'</strong>.</p>


</dt></dl>
<a name=option.invalidcommand></a>
<dl><dt> <strong>invalidcommand
</strong><dd>
This is executed when invalid text is entered and the text is
    restored to its previous value (that is, when the <strong>validate</strong>
    function returns <strong>0</strong>).  The default is <strong>self.bell</strong>.</p>


</dt></dl>
<a name=option.labelmargin></a>
<dl><dt> <strong>labelmargin
</strong><dd>
Initialisation option. If the <strong>labelpos</strong> option is not <strong>None</strong>, this specifies the
        distance between the <strong>label</strong> component and the rest of the
        megawidget. The default is <strong>0</strong>.</p>


</dt></dl>
<a name=option.labelpos></a>
<dl><dt> <strong>labelpos
</strong><dd>
Initialisation option. Specifies where to place the <strong>label</strong> component.  If not
        <strong>None</strong>, it should be a concatenation of one or two of the
        letters <strong>'n'</strong>, <strong>'s'</strong>, <strong>'e'</strong> and <strong>'w'</strong>.  The first letter
        specifies on which side of the megawidget to place the label. 
        If a second letter is specified, it indicates where on that
        side to place the label.  For example, if <strong>labelpos</strong> is <strong>'w'</strong>,
        the label is placed in the centre of the left hand side; if
        it is <strong>'wn'</strong>, the label is placed at the top of the left
        hand side; if it is <strong>'ws'</strong>, the label is placed at the
        bottom of the left hand side.</p>
<p>        If <strong>None</strong>, a label component is not created. The default is <strong>None</strong>.</p>



</dt></dl>
<a name=option.maxwidth></a>
<dl><dt> <strong>maxwidth
</strong><dd>
Specifies the maximum allowable width of the entry.  The widget
    will display no more than this number of characters in the entry,
    regardless of what the user types.  If <strong>0</strong>, then no length
    restriction is imposed. The default is <strong>0</strong>.</p>


</dt></dl>
<a name=option.modifiedcommand></a>
<dl><dt> <strong>modifiedcommand
</strong><dd>
This is called whenever the contents of the entry has been changed
    due to user action or by a call to <code>setentry()</code>. The default is <strong>None</strong>.</p>


</dt></dl>
<a name=option.validate></a>
<dl><dt> <strong>validate
</strong><dd>
Specifies what kind of validation should be performed on the entry
    input.  Must be one of the built-in validators, a function or
    <strong>None</strong>.  The built-in validators are</p>
<dl><dd><pre> numeric           integer &gt;= 0
 integer           any integer, negative, 0 or positive
 hexadecimal       hex number (optionally with leading 0x)
 real              number with or without a decimal point
 alphabetic        letters a-zA-Z
 alphanumeric      letters a-zA-Z and digits
 timeN             HH:MM:SS (may be negative)
 time24            HH:MM:SS (between 00:00:00 and 23:59:59)
 date_dmy          DD/MM/YY
 date_mdy          MM/DD/YY
 date_ymd          YY/MM/DD
                     - YY may be any number of digits</pre></dl>

<p>    If <strong>validate</strong> is a function, then it will be called whenever the
    contents of the entry may have changed due to user action or by a
    call to <code>setentry()</code>.  The function is called with one argument,
    being the new text as modified by the user or <code>setentry()</code>.  It
    should return <strong>1</strong> if the text is valid.  It should return <strong>0</strong> if
    the text is invalid and the entry should be restored to its
    previous value.  It should return <strong>-1</strong> if the text is invalid and
    should be displayed using the <strong>errorbackground</strong> color.</p>

<p>    If <strong>validate</strong> is <strong>None</strong>, no validation is performed. The default is <strong>None</strong>.</p>



</dt></dl>
<a name=option.value></a>
<dl><dt> <strong>value
</strong><dd>
Initialisation option. Specifies the initial contents of the entry. The default is <strong>''</strong>.</p>


</dt></dl>
<dt> <h3>Components</h3><dd>
Components created by this megawidget and its base
classes are described below.<p>
<a name=component.entry></a>
<dl><dt> <strong>entry
</strong><dd>
The widget where the user may enter text.  Long text may be
    scrolled horizontally by dragging with the middle mouse button. By default, this component is a Tkinter.Entry.</p>


</dt></dl>
<a name=component.hull></a>
<dl><dt> <strong>hull
</strong><dd>
This acts as the body for the entire megawidget.  Other components
    are created as children of the hull to further specialise the
    widget. By default, this component is a Tkinter.Frame.</p>


</dt></dl>
<a name=component.label></a>
<dl><dt> <strong>label
</strong><dd>
If the <strong>labelpos</strong> option is not <strong>None</strong>, this component is
        created as a text label for the megawidget.  See the
        <strong>labelpos</strong> option for details.  Note that to set, for example,
        the <strong>text</strong> option of the label, you need use the <strong>label_text</strong>
        component option. By default, this component is a Tkinter.Label.</p>


</dt></dl>
<a name=methods></a>
<dt> <h3>Methods</h3><dd>
Only methods specific to this megawidget are described below.
For a description of its inherited methods, see the
manuals for its base classes.
In addition, methods from
<strong>Tkinter.Entry</strong> are forwarded
to this megawidget's <strong>entry</strong>
component.
<p>
<a name=method.clear></a>
<dl><dt> <strong>clear</strong>()<dd>
Remove all text from the entry widget.</p>


</dt></dl>
<a name=method.invoke></a>
<dl><dt> <strong>invoke</strong>()<dd>
Invoke the command specified by the <strong>command</strong> option as if the
    <strong>&lt;Return&gt;</strong> key had been pressed.</p>


</dt></dl>
<a name=method.setentry></a>
<dl><dt> <strong>setentry</strong>(<em>text</em>)<dd>
Set the contents of the entry widget to <em>text</em> and carry out
    validation as if the text had been entered by the user.</p>


</dt></dl>
<a name=method.valid></a>
<dl><dt> <strong>valid</strong>()<dd>
Return true if the contents of the entry widget are valid.</p>


</dt></dl>
</dl>

    <center><P ALIGN="CENTER">
    <IMG SRC = blue_line.gif ALT = "" WIDTH=320 HEIGHT=5>
    </p></center>
    

    <font size=-1>
    <center><P ALIGN="CENTER">
    <a href="index.html">Home</a>. 
    Pmw 0.6.2
    Maintainer
    <a href="mailto:gregm@iname.com">gregm@iname.com</a>.
    23 Feb 1998
    </p></center>
    </font>

    </body>
    </html>