Seite 1 von 1

wx Python - Nur numerische Eingabe akzeptieren

Verfasst: Dienstag 30. September 2003, 12:12
von 2bock
Wie sorge ich in Python dafür, das nur numerische Werte in ein Textfeld geschrieben werden?

Suche zwar jetzt selber noch weiter danach, aber wenn jemand ne Lösung weiss wäre ich dankbar.

Im übrigen möchte ich noch einmal na mein GROßES Problem erinnern. Das mit den BoxSizern.
Hier der Link http://python.sandtner.net/viewtopic.ph ... 132836d264

Schon mal ein "Danke" vorab.

2bock

Verfasst: Dienstag 30. September 2003, 13:13
von Dookie
Hi 2bock,

da wirst Du einen wxTextValidator an Dein Textfeld binden müssen.


Gruß

Dookie

Die Lösung war wie so oft recht einfach.

Verfasst: Mittwoch 1. Oktober 2003, 09:37
von 2bock
Die Lösung ist unter wxPython ganz iebfach.

control = wxMaskedTextCtrl( win, -1, '', mask = '(###) ###-####')



Initialisierungsparameter für "Mask"
========================
mask=

# nur numerisch (0-9)
N buchstaben und zahlen (0-9)
A nur großbuchstaben
a nur keingeschriebenes
C nur Buchstaben (groß und klein)
X erlaubt string.letters, string.punctuation, string.digits

:wink:

re

Verfasst: Montag 19. April 2004, 15:47
von HarryH
Hallo 2Bock

In wxPython gibt es kein wxMaskedTextCtrl
Ich habe es zumindest in der Doku nicht gefunden!

Verfasst: Montag 19. April 2004, 18:36
von Christopy
@HarryH
Leider ist die Dokumentation nicht ganz vollständig. Mit

Code: Alles auswählen

from wxPython.lib.maskededit import wxMaskedTextCtrl
kannst Du es benutzen.

@2bock
Danke für den Tipp!
Wie hast Du das gefunden?

re:

Verfasst: Dienstag 20. April 2004, 07:14
von HarryH
Hallo Christopy,

Alles klar, Danke!

Da fällt mir noch ein, Dookie sprach noch von wxTextValidator. Dieser ist zwar in der Doku vorhanden, beim Laden wir allerdings folgender Fehler gezeigt:

Code: Alles auswählen

Traceback (most recent call last):
  File "C:\Dokumente und Einstellungen\hh16534\Eigene Dateien\2-Eigene_Programme\PPTool\PPTool.py", line 2567, in ?
    app = MyApp(0)
  File "D:\Python23\Lib\site-packages\wx\core.py", line 5042, in __init__
    self._BootstrapApp()
  File "D:\Python23\Lib\site-packages\wx\core.py", line 4791, in _BootstrapApp
    return _core.PyApp__BootstrapApp(*args, **kwargs)
  File "C:\Dokumente und Einstellungen\hh16534\Eigene Dateien\2-Eigene_Programme\PPTool\PPTool.py", line 2562, in OnInit
    frame = MyFrame(None, -1, "CNC-PP-Tool", 1)
  File "C:\Dokumente und Einstellungen\hh16534\Eigene Dateien\2-Eigene_Programme\PPTool\PPTool.py", line 110, in __init__
    self.Validator=wx.TextValidator(style=wxFILTER_ALPHANUMERIC)
AttributeError: 'module' object has no attribute 'TextValidator'
>Exit code: 1