XbpSle -> validate? [erledigt]

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

XbpSle -> validate? [erledigt]

Beitrag von Wolfgang_B »

Hallo Kollegen,

kann mit bitte mal jemand kurz erklären, wie man ein Eingabefeld validieren kann? Ich komme mit :editbuffer nicht klar. Ich möchte nach dem Verlassen des Eingabefeldes (SLE) prüfen, ob eine Zahl > 999999 eingegeben wurde und wenn ja, entsprechend anmeckern.

Danke und Gruß
Zuletzt geändert von Wolfgang_B am Do, 17. Mai 2018 14:03, insgesamt 1-mal geändert.
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: XbpSle -> validate?

Beitrag von Martin Altmann »

Code: Alles auswählen

if val( ::obj:EditBuffer() ) > 999999
Klappt bei Dir nicht?

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: XbpSle -> validate?

Beitrag von Wolfgang_B »

Hallo Martin,

klappt so nicht. Bekomme beim Compil. immer den Fehler -> (108:0): error XBT0231: Invalid lvalue <-- kann mit lvalue nichts anfangen ...

Code: Alles auswählen

  oXbpSF := XbpSLE():new(oXbpK , , {190, 10}, {120,25}, { { XBP_PP_BGCLR, XBPSYSCLR_ENTRYFIELD } } )
  oXbpSF:tabStop := .T.
  oXbpSF:create()
  oXbpSF:KillInputFocus():=  {|| IF( VAL(oXbpSF:editBuffer()) > 999999, MsgBox(">"), MsgBox("<") )}
Wolfgang
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: XbpSle -> validate?

Beitrag von Martin Altmann »

KillINputFocus ist der Slot - also ohne () dahinter!

Code: Alles auswählen

 oXbpSF:KillInputFocus :=  {|| IF( VAL(oXbpSF:editBuffer()) > 999999, MsgBox(">"), MsgBox("<") )}
Desweiteren bekommt der Codeblock drei Parameter, der dritte ist das Objekt selbst. Also könntest Du auch schreiben:

Code: Alles auswählen

 oXbpSF:KillInputFocus :=  {|,,obj| IF( VAL(obj:editBuffer()) > 999999, MsgBox(">"), MsgBox("<") )}
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: XbpSle -> validate?

Beitrag von Wolfgang_B »

Funktioniert! :D Danke!!

Woher weiß ich denn, wieviele Parameter so ein Codeblock haben muß?
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16502
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: XbpSle -> validate?

Beitrag von Martin Altmann »

Die Anzahl liest Du in der Hilfe - das entscheidende bei Dir waren die ()
Das mit den Parametern ist in deinem Fall nicht ganz so wichtig.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: XbpSle -> validate?

Beitrag von Wolfgang_B »

Alles klar.
Nochmal vielen Dank.
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XbpSle -> validate? [erledigt]

Beitrag von brandelh »

oder nimm meine numerische SLE Erweiterung ... aus der Wissensbasis.
Gruß
Hubert
Benutzeravatar
Wolfgang_B
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 484
Registriert: Do, 14. Jun 2007 18:22
Wohnort: 94065 Waldkirchen
Hat sich bedankt: 14 Mal
Danksagung erhalten: 5 Mal

Re: XbpSle -> validate? [erledigt]

Beitrag von Wolfgang_B »

Hallo Hubert,
habe ich mir schon angeschaut. Für diesen konkreten Fall brauchte ich nur ein QuickandDirty Lösung.

Aber Danke für den Hinweis.
Beste Grüße
Wolfgang

Mitglied des Deutschsprachigen Xbase-Entwickler e. V.
Mitglied der XUG Osnabrück
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: XbpSle -> validate? [erledigt]

Beitrag von Tom »

Die Parametrisierung der Slots und Callback steht in der Hilfe.
Herzlich,
Tom
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: XbpSle -> validate? [erledigt]

Beitrag von brandelh »

Vor Jahren habe ich mit VB experimentiert, SLE aufgemacht "12 34 5bbb33 32" eingegeben und => 12 als Ergebnis erhalten ... für mich unbrauchbar.
Heute könnte man wohl auf numerisch begrenzen, aber - und . bzw. , sind eben nicht numerisch ... also 2 SLE oder Xbase++ und XbpSle ableiten und ändern.
Gruß
Hubert
Antworten