Ausrichtung im Getfeld [erledigt]

Moderator: Moderatoren

Antworten
Ewald
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 475
Registriert: Sa, 08. Apr 2006 14:07
Wohnort: Datteln
Danksagung erhalten: 3 Mal
Kontaktdaten:

Ausrichtung im Getfeld [erledigt]

Beitrag von Ewald »

Da ärgere ich mich schon lange drüber, verdränge es dann aber immer wieder.
Wenn ich so ein Eingabefeld erzeuge und dann eine größere getfont wähle
(12.Lucide Console z.B.) erfolgt die Eingabe im Feld nicht rechtsbündig sondern irgendwie
mitten drin. Wie bekomme ich das denn wohl hin, das vproz rechtsbündig angezeigt wird
und auch eingegeben wird, egal welche getfont ich wähle.

Code: Alles auswählen

@ 03,40 dcget vproz pict  "@E 99.99"
Zuletzt geändert von Ewald am Di, 24. Sep 2013 17:35, insgesamt 1-mal geändert.
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2934
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: Ausrichtung im Getfeld

Beitrag von Wolfgang Ciriack »

Hast du vielleicht noch ein GETSIZE drin ?
Ohne GETSIZE sollte es m.E. immer rechtsbündig sein.
Viele Grüße
Wolfgang
Ewald
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 475
Registriert: Sa, 08. Apr 2006 14:07
Wohnort: Datteln
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Ausrichtung im Getfeld

Beitrag von Ewald »

Hallo Wolfgang,
habe ich nicht. Nur eine Getfont. In diesem Fall 12.Lucida Console.
Zuletzt geändert von Ewald am Fr, 27. Sep 2013 13:44, insgesamt 1-mal geändert.
Ewald
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 475
Registriert: Sa, 08. Apr 2006 14:07
Wohnort: Datteln
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Ausrichtung im Getfeld

Beitrag von Ewald »

Ich habe mich mal in den Express Demos in XDEMO umgesehen. Da gibt es im Set4 unter Punkt GETFonts ein schönes Beispiel für mein Problem.
In diesem Beispiel sind unten 3 Eingabefelder für Zahlen.
Solange ich direkt in die beiden letzten Felder (Large Fonts) Zahlen eingebe funktioniert das alles schön rechtsbündig.
Wenn ich aber einmal eine Zahl in das Feld "Numeric" eingebe, funktioniert das mit den Large Fonts auch nicht mehr. Die Eingabe und Darstellung ist dann in diesen Large Fonts Feldern nicht mehr rechtsbündig.
Irgendwas geht da verloren. Kann das wohl jemand bestätigen - oder liegt das Problem irgendwo nur bei mir ?
Gruß
Ewald
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9358
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Re: Ausrichtung im Getfeld

Beitrag von Tom »

Das Beispiel kann ich bestätigen. Ich nehme an, dass da ein Fehler bei der automatischen Berechnung der GetSize vorliegt. Ich würde Dir empfehlen, einfach mal mit ein paar Einstellungen für GETSIZE herumzuspielen und die richtigen herauszusuchen. Letztlich ist die Darstellung des Eingabefeldes einfach größer als der dort zu erfassende Eintrag. Das Spiel kannst Du auch nachstellen:

Code: Alles auswählen

cTest := Space(10)

@ 1,1 DCSAY 'Test:' get cTest // Eingabefeldgröße stimmt

@ 1,1 DCSAY 'Test:' get cTEst GETSIZE 50 // Das Feld wird sehr breit, aber man kann trotzdem nur 10 Zeichen eingeben
Allerdings funktioniert das hier bei mir perfekt:

Code: Alles auswählen

nTest := 0.00

@ 1,1 DCSAY 'Test:' GET nTest PICTURE "@E 99.99" GETFONT "12.Lucida Console"

DCREAD GUI FIT ADDBUTTONS
Das Getfeld wird in der richtigen Größe angezeigt, die Eingabe ist rechtsbündig.
Herzlich,
Tom
Ewald
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 475
Registriert: Sa, 08. Apr 2006 14:07
Wohnort: Datteln
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: Ausrichtung im Getfeld

Beitrag von Ewald »

Mann oh mann oh mann, das zweite Beispiel von Tom entspricht doch genau meinem Quellcode - war ich mir 100%ig sicher.
Bis ich in meine getoptions hochgescrollt habe.
:color:

Code: Alles auswählen

dcgetoptions ;
sayfont "12.Lucida Console" ;
getfont "12.Lucida Consol "
Gib immer 100% - nur nicht beim Blutspenden.
Antworten