ERLEDIGT
JA
JA
ANTWORTEN
3
3
ZUGRIFFE
409
409
EMPFEHLEN
-
Hallo!
Ist es irgendwie möglich die Bereichsprüfung die man ua. mit dem Klassenassisten (Member-Variable) oder unter DoDataExchange(CDataExchange* pDX) für eine Variable (float, int, usw.) einstellen kann, zur Laufzeit zu ändern?
MfG. Thomas
-
Keine Ahnung. Ich bin dem Problem ausgewichen, indem ich die Bereichsprüfung in einer eigenen Funktion vorgenommen habe...
Ein Beispiel:
** in einem Dialog können über die Editfelder Strings eingelesen werden, die anschließend beim Klicken auf OK auf richtige Eingabe überprüft werden sollen (man kann es natürlich auch so machen, dass sie überprüft werden sollen, wenn das Editfeld den Eingabefokus verliert):
Code :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
bool stringzahlen (CString straps) { int kommas=0; for(int i=0; i<straps.GetLength(); i++) { if(straps.GetAt(i)==44 || straps.GetAt(i)==46) //KOMMA UND PUNKT EINGABE EINMAL() ERLAUBT kommas++; if(!((straps.GetAt(i)>=48 && straps.GetAt(i)<=57) || straps.GetAt(i)==44 || straps.GetAt(i)==46)) //SOLANGE DER STRING AUS ZAHLEN, KOMMAS UND PUNKTEN BESTEHT IST ALLES IN ORDNUNG return FALSE; } if(kommas<=1) return TRUE; else return FALSE; } void Dateneingabe::OnOK() { int i; bool okornotok=TRUE; CString eingabe; GetDlgItemText(IDC_EDITFELD,eingabe); if( !stringzahlen(eingabe) ) { MessageBox("GIB WAS ORDENTLICHES EIN, DU DEPP","Achtung!",MB_OK ); okornotok=FALSE; } if(okornotok) CDialog::OnOK(); }
-
Das sollte funktionieren, wenn Du im DoDataExchange im entsprechenden Funktionsaufruf DDV_MinMaxInt(...) für Dein Anzeigeelement die konstanten minVal und maxVal Parameter (Parameter 3 und 4) durch Variablen ersetzt. Ich gehe jetzt davon aus, daß die Zeile mit dem DDV_MinMaxInt(...) vom Wizard hinzugefügt wurde.
-
@ jokey2: vielen Dank, hat funktioniert.
Ich hatte das zwar auch schon versucht, aber ich hatte da Variablen genommen, die erst später im Dialog von einem anderen Dialog her übergeben wurden .. hab da irgendwie gepennt
@ Rearhh: jupp, habe ich auch bei manchen Sachen so gemacht, aber bei dieser spezielen Sache brauchte ich die vordefinierte Bereichsprüfung. Danke trotzdem
MfG. Thomas
Ähnliche Themen
-
[C++] unerklärliches ändern einer variable
Von cycovery im Forum C/C++Antworten: 4Letzter Beitrag: 28.05.08, 08:05 -
Website während der Laufzeit ändern in Abhängigkeit von einer anderen.
Von Fredyy im Forum Javascript & AjaxAntworten: 2Letzter Beitrag: 21.12.06, 15:59 -
Werte einer Java 5 Annotation zur Laufzeit ändern.
Von Thomas Darimont im Forum JavaAntworten: 0Letzter Beitrag: 22.10.06, 19:17 -
Größe einer Picturebox zur Laufzeit ändern
Von PoNr im Forum Visual Basic 6.0Antworten: 4Letzter Beitrag: 07.01.05, 11:19 -
Nach "Buttonklick" soll sich eine Variable in einer mySQL Tabelle ändern
Von _root im Forum PHPAntworten: 7Letzter Beitrag: 12.10.04, 08:41





Zitieren
Login






