wx Python - Nur numerische Eingabe akzeptieren

Plattformunabhängige GUIs mit wxWidgets.
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

wx Python - Nur numerische Eingabe akzeptieren

Beitragvon 2bock » Dienstag 30. September 2003, 12:12

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.php?t=888&sid=95861d45890e1af2c5a0d0132836d264

Schon mal ein "Danke" vorab.

2bock
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Dienstag 30. September 2003, 13:13

Hi 2bock,

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


Gruß

Dookie
Benutzeravatar
2bock
User
Beiträge: 94
Registriert: Freitag 12. September 2003, 07:58
Wohnort: 50.9333300 / 6.3666700

Die Lösung war wie so oft recht einfach.

Beitragvon 2bock » Mittwoch 1. Oktober 2003, 09:37

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:
HarryH
User
Beiträge: 266
Registriert: Freitag 23. Mai 2003, 09:08
Wohnort: Deutschland

re

Beitragvon HarryH » Montag 19. April 2004, 15:47

Hallo 2Bock

In wxPython gibt es kein wxMaskedTextCtrl
Ich habe es zumindest in der Doku nicht gefunden!
Gruß, Harry
Christopy
User
Beiträge: 131
Registriert: Montag 15. Dezember 2003, 22:39

Beitragvon Christopy » Montag 19. April 2004, 18:36

@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?
HarryH
User
Beiträge: 266
Registriert: Freitag 23. Mai 2003, 09:08
Wohnort: Deutschland

re:

Beitragvon HarryH » Dienstag 20. April 2004, 07:14

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
Gruß, Harry

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder