xclass Edit-Feld

Moderator: Moderatoren

Antworten
stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

xclass Edit-Feld

Beitrag von stevie »

Ich erstelle ein Edit-Feld:
oSleSensor := dsSle():new(oEdit, , {60,280}, {80,20}, , .T. )
czahl:=recno()
oSleSensor:clipSiblings := .T.
oSleSensor:tabStop := .T.
oSleSensor:bufferLength := 13
if cmode = "bearbeiten"
oSleSensor:setdata( osrv1:fieldget(3),,)
endif
oSleSensor:create()

Wenn setdata nicht ausgeführt wurde, wird linksbündig angefangen, wenn aber nicht dann wird rechts angefangen und das Value, was editiert werden soll, wird erst nach einem Tastendruck angezeigt. Was muss ich tun, damit die Daten ohne Tastendruck sofort links angezeigt werden?
Sören
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 205
Registriert: Mo, 07. Aug 2006 10:18
Wohnort: Leipzig
Danksagung erhalten: 11 Mal

Beitrag von Sören »

Hallo Stevie,

mach mal das ::SetData() erst nach dem ::Create(), dann sollte es
eigentlich funktionieren.
Beste Grüße,
Sören
stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

Beitrag von stevie »

Sören hat geschrieben:Hallo Stevie,

mach mal das ::SetData() erst nach dem ::Create(), dann sollte es
eigentlich funktionieren.
wenn ich das mache, werden im gesamten Feld nur noch große "X" angezeigt.
Zuletzt geändert von stevie am Mi, 17. Okt 2007 10:18, insgesamt 2-mal geändert.
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:

Beitrag von brandelh »

Hi,

normalerweise kann man in Xbase++ Methoden erst aufrufen sobald das Create() erfolgt ist (Ausnahme oXbpPrinter:list()). Warum die X erscheinen, keine Ahnung eventuell signalisieren sie aber eine Art Feldüberlauf wie die * bei GET ?
Gruß
Hubert
stevie
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 417
Registriert: Mo, 17. Sep 2007 18:20
Wohnort: Senftenberg
Kontaktdaten:

Beitrag von stevie »

brandelh hat geschrieben:Hi,

normalerweise kann man in Xbase++ Methoden erst aufrufen sobald das Create() erfolgt ist (Ausnahme oXbpPrinter:list()). Warum die X erscheinen, keine Ahnung eventuell signalisieren sie aber eine Art Feldüberlauf wie die * bei GET ?
Ergänzung: Das tritt nur auf, wenn die Feldinhalte numerisch sind.
Wenn sie Zeichen sind, klappts. Das heißt, wenn ich die Daten vorher mit alltrim und str bearbeite, werden sie ordentlich angezeigt. setdata() muss natürlich dabei hinter create() ausgeführt werden.
Wenn ich die aber so bearbeite muss ich sie ja danach wieder mit val() in numerisch verwandeln, damit das in die Db eingetragen werden kann.
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:

Beitrag von Martin Altmann »

Hallo Stevie,
damit XClass++ weiß, was es darstellen soll, musst Du natürlich einige Angaben machen - z.B. einen :datalink mitgeben.
So mache ich das bei mir (ohne Probleme) mit einem numerischen Feld:

Code: Alles auswählen

::Coden         := dsSle():new( ::drawingArea, , {130,398}, {30,18} )
::Coden:bufferLength := 3
::Coden:tabStop := .T.
::Coden:autoTab := .T.
::Coden:Picture := "@K 999"
::Coden:Tooltip := "Geben Sie die Codenummer des Hundes an!"
::Coden:KillInputFocus := { |a,b,obj| ::hcrtest( obj ) }
::Coden:dataLink := {|x| IIf( PCOUNT()==0, &dateiname->Coden, &dateiname->Coden := x ) }
AAdd( ::editControls, ::Coden )
Wenn Du kein Feld aus einer Datenbank nimmst, sondern eine Variable, musst Du diese vorher zwingend initialisieren, damit das dsSle weiß, was auf es zukommt!

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.
Antworten