Delphi-PRAXiS
Seite 6 von 7   « Erste     456 7      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi7 mit nur einer Unit Unicode fähig machen (https://www.delphipraxis.net/175267-delphi7-mit-nur-einer-unit-unicode-faehig-machen.html)

somby 12. Jul 2016 15:05

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Meine vorerst letzte Version,
bitte melden, wenn Ihr fehler entdeckt.
Gruß somby

derMischka 15. Aug 2016 16:09

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi Somby,

habe mal meine aktuelle Version mit deiner gemerged.
Ich hoffe, dabei keine Fehler gemacht zu haben.

Als wesentliche Neuerung habe ich CLASS_UNICODE_EXT eingeführt (damit es mit vorher Registrierten Classes keine Probleme gibt).
Des Weiteren sammle ich alle registrierten W-Classes in eine StringList gesammelt.
Beim Finalisieren werden diese explizit unregistered (Hat bei mir DLL-Probleme gelöst).

der Mischka

somby 17. Aug 2016 09:23

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo "derMischka",
schön, dass du wieder mal an der Unit oWinApiUnicode.pas
gearbeitet hast. Zu deiner Version habe ich auch noch
einiges ergänzt:

- TextOut
- PeekMessage
- GetTextExtentExPoint

Beim testen mit einer kyrillischen Bildschirmtastatur
fiel mir auf, dass keine WideChar-Tastencodes ankamen.
Das lag daran, dass Delphi7 in der Klasse TWinControl der
Unit Controls in der Botschaft WM_CHAR die protected Funktion
DoKeyPress aufruft, die wiederum KeyPress aufruft und hier das
WideChar auf Char beschneidet.
Um das zu umgehen, wurde in der Klasse TWinControl die Botschaft
WM_CHAR durch eine Hilfsklasse TChWinControl neu belegt.
Bei der Verwendung von OnKeypress kann, obwohl nur
ein Char übergeben wird, trotzdem das WideChar abgefragt werden:
z.B.:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
var UniKey: WideChar absolute Key;
begin
....
end;

Ich nutze oWinApiUnicode schon seit einiger Zeit mit gutem
Erfolg.

Noch eine kleine Bemerkung betrifft meine vielleicht eigenartige
Blockstruktur im Quellcode (begin am ende usw.), z.B.:

if ... then begin
...
end;


Ich nutze diese
Struktur schon seit vielen Jahren mit gutem Erfolg, da diese Struktur im Gegensatz
zu
if ... then
begin
...
end;
eine sehr gute Blocklesbarkeit garantiert. Also bitte nicht ärgern wenn das
für dich und die anderen Nutzer etwas merkwürdig erscheint.

Viele Grüße
Somby

somby 17. Aug 2016 10:02

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo derMischka,
habe noch eine kleine Änderung,
konnte in der Klasse TWinControl die
protected Funktion DoKeyPress direkt überschreiben,
brauchte nicht die Botschaft WM_CHAR anzuzapfen.

Gruß
Somby

somby 17. Aug 2016 12:25

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Hallo "derMischka",
leider funktionieren nach deine Klassenumbenennung
meine MDI-Fenster nicht mehr, gehe wieder zurück auf
alte Version
Gruß
Somby

Memnarch 17. Aug 2016 14:38

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Kurze frage: wie wärs mit nem Github-Repo? Hier lässt sich weder der aktuellste stand noch die Änderungen vernünftig tracken.

querter 27. Feb 2017 17:34

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Hallo derMischka & Somby,

was und wie ist denn jetzt der letzte Stand?

Leider scheint sich das Projekt irgendwie "kaputt" eingeschlafen zu sein.

Schade.

Könnte ihr beide ggf. noch einmal gemeinsam "letzte" Anstrengungen an/in Zeit investieren - für ein Final-Version?! :oops:

Herzliche Grüße
querter

derMischka 15. Mär 2017 14:09

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

hier mein letzter Stand von oWinApiUniCode.pas

der Mischka

derMischka 12. Okt 2017 13:47

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,

mal wieder eine aktuelle Version von oWinApiUniCode.pas

Nun können auch über die Tastatur eingebene Zeichen > high(Char) eingelesen werden.

Ansonsten sind noch ein paar Bugfixes mit eingeflossen.

Viel Spaß damit.

der Mischka

querter 19. Okt 2017 19:24

AW: Delphi7 mit nur einer Unit Unicode fähig machen
 
Zitat:

Zitat von derMischka (Beitrag 1383180)
mal wieder eine aktuelle Version von oWinApiUniCode.pas

Hallo der Mischka,

DANKE! :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:30 Uhr.
Seite 6 von 7   « Erste     456 7      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz