Seite 1 von 1

oSle:unReadable

Verfasst: Mo, 23. Jul 2007 9:18
von Jan
Moin,

gleich vorweg: Ich arbeite hier mit SlePic von Jim, aber das macht in diesem Fall ofensichtlich keinen Unterschied, ich hab das zu Testzwecken auch mit Original XbpSle versucht.

Folgendes: Ich habe eine Einlog-Maske erstellt, in der logischerweise das Kennwort "unsichtbar" eingegeben werden soll. Ich habe also ein sle:new(), danach das :create(), und dann das :unReadable := .T. eingetragen. Funktioniert tadellos, auch wenn nicht wie in der Hilfe angegeben Sterne sondern Punkte angezeigt werden. Aber das ist ja unter XP normal.

Nur: Jetzt habe ich das ganze Teil in ein anderes Projekt übertragen. Und da funktioniert das nicht mehr! Der Code der Maske selber ist der gleiche, aber das Kennwort wird voll lesbar angezeigt! Ich habe da ein wenig rumgetüftelt und festgestellt, daß ich das :unReadable := .T. VOR das :create() schieben muß. Dann wird jedoch (gleicher Rechner, kein Multiboot mit anderem Betriebssystem) weder ein Stern noch ein Punkt, sondern ein fetter | angezeigt.

1) Warum muß das einmal vor und einmal nach dem :create() stehen?

2) Was mache ich, damit ich wieder Punkte bekomme?

Jan

Verfasst: Mo, 23. Jul 2007 9:28
von Martin Altmann
Hallo Jan,
unreadable ist in der Hilfe unter Konfiguration aufgeführt - es muss also zwingend vor dem Create() gesetzt werden, ansonsten bedarf es eines nachfolgenden :configure()'s.
Unterschied der Anzeige: Wahrscheinlich auf dem einen Rechner OEM und dem anderen ANSI? Wie sehen auf beiden PCs Deine entsprechenden Compiler/Linkerschalter aus?

Viele Grüße,
Martin

Verfasst: Mo, 23. Jul 2007 9:51
von Jan
Martin,

hab gerade nochmal etwas getestet. Und festgestellt, daß nun in beiden Programmen nur fette | angezeigt werden. Also ist das eine Problem schon einmal etwas klarer geworden. Ich wusste, daß in dem 1. Programm die Punkte angezeigt wurden und hab das deswegen nicht noch einmal versucht. Ich denke, es hat etwas damit zu tun, daß ich mein Laptop vergangene Woche komplett neu aufsetzen musste. Und dabei habe ich wohl irgendetwas anders konfiguriert.

Ansonsten: Die Projektdateien sind die gleichen, alles mit ANSI-Schalter, wie bei jedem meiner Projekte. Und mit dem 1. Programm hat es ja bis vor 1 Woche auch optisch korrekt funktioniert.

Ich habe gerade noch einmal auf einem anderen Rechner mit Win200Pro getestet: Da kommen in der Tat die *. Stellt sich jetzt also noch die Frage: Wie komme ich wieder von Linie auf Punkt unter XP? Linie ist ja nicht unbedingt schlecht, aber nun einmal nicht Windows-Konform.

Jan

Verfasst: Mo, 23. Jul 2007 9:55
von Martin Altmann
Hallo Jan,
wie gesagt - der Unterschied liegt entweder an unterschiedlichen SET CHARSET TO-Einstellungen bzw. Compilerschaltern (letzteres hast Du ja ausgeschlossen) oder an einer fehlenden Schriftart, die Du für Dein SLE nutzt...

Viele Grüße,
Martin

Verfasst: Mo, 23. Jul 2007 10:09
von Jan
Hallo Martin,

das mit der Schriftart habe ich gerade getestet - das war es offensichtlich nicht.

Compilerschalter etc. werde ich heute Abend mal unetrsuchen, das schaffe ich im Moment leider nicht mehr.

Erstmal Danke für die Hinweise.

Jan

Verfasst: Mi, 25. Jul 2007 10:14
von Jan
Martin,

ich habs gefunden. Es war doch die Schrift. So was blödes. Ich war irrtümlich davon ausgegangen daß ich die Schrift systemweit setzen kann. Aber nachdem ich die Schrift in dem betreffenden Dialog gesetzt habe lief es wie gewünscht. Also wieder einmal fehlgedacht.

Um so mehr wünsche ich mir daß bestimmte Dinge vom Systemdialog an alle abgeleiteten Dialoge vererbt werden. Mal sehen, ob Till das irgendwann umsetzen kann/will.

Jan