Thema: If Key = #107

Einzelnen Beitrag anzeigen

Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
711 Beiträge
 
Delphi XE5 Professional
 
#18

AW: If Key = #107

  Alt 19. Mai 2019, 22:20
Man sollte hier aber auch bedenken:

EIn Zeilenumbruch unter Windows ist NICHT #13 sondern die beiden Zeichen #13#10 , die nacheinander gedrückt werden!

Das mag ja in 99% der Fälle keinen Unterschied machen, aber in dem einen Prozent kann es das durchaus. Besonders bei Text, der von Linux-oder MacOS-Plattformen kommt (dort ist der Zeilenumbruch nämlich nur #10 ). Auch macht es bei Stringverarbeitungen wie StringReplace einen Unterschied. Benutze auch hier lieber OnKeyDown bzw. OnKeyPress mit VK_RETURN . Da weißt du dann zu 100% sicher, dass es ein Enter ist.
Besser, Du verwendest gleich die vorderfinierte Konstante System.sLineBreak

Delphi-Quellcode:
System.pas
...
const
   sLineBreak = {$IFDEF POSIX} _AnsiChr(#10) {$ENDIF}
       {$IFDEF MSWINDOWS} _AnsiStr(#13#10) {$ENDIF};
...
Gruß
Andreas
  Mit Zitat antworten Zitat