Autor Beitrag
Peter18
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 489
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Mo 12.12.16 13:43 
Ein freundliches Hallo an alle,

ich habe für eine Prüfung einen einfachen DummyMailClient geschrieben. Für diejenigen die mit einer anderen Sprache als Deutsch aufgewachsen sind, habe ich die Möglichkeit eingebaut, die Sprache auf Englisch umzuschalten. Ich würde gern auch Arabisch einbauen, aber das scheitert bisher daran, dass TLabel bei Caption einen Pascal-String erwartet. Grichisch, Arabisch u.s.w. erreicht man aber nur über einen erweiterten Zeichensatz. Ich möchte aber nicht die Sprache umschalten, da die Eingabe auf Deutsch erfolgen soll.

Hat jemand einen Tipp, wie ich mit Delphi 4 bei TLabel und TMenuItem Caption in Arabisch beschriften kann?

Grüße von der wolkigen Nordsee

Peter
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mo 12.12.16 14:20 
Mit den mitgelieferten Controls so wie sie sind geht das gar nicht.

Es gibt hauptsächlich zwei Möglichkeiten:
  • Es gibt eine Unit, die sich überall einklinkt und so Unicode in die Standardkomponenten bringt:
    www.delphipraxis.net...e-faehig-machen.html
    Ob du die irgendwie für Delphi 4 zum Laufen bekommst, weiß ich nicht. Ich vermute, dass das nicht so einfach ist.
  • Die TNT Unicode Controls sind unicodefähig, aber auch nicht mehr für Delphi 4, da gilt wohl ähnliches:
    github.com/rofl0r/TntUnicode

Angesichts der nach wie vor kostenlosen Starter Edition sehe ich allerdings keinen Grund dafür diesen immensen Aufwand zu betreiben...
Denn die ist schließlich bereits voll unicodefähig ohne Verrenkungen.
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 12.12.16 14:33 
- Nachträglich durch die Entwickler-Ecke gelöscht -
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 489
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Mo 12.12.16 15:25 
Hallo Sebastian, hallo Frühlingsrolle,

Dank Euch für die Antworten!

Sebastian, die Starter Edition war ausgelaufen und daher konnte ich mich nicht mit ihr vertraut machen. Da sie jetzt wieder kostenlos ist, werde ich sie mir ansehen. Ich hatte damals Probleme mit der Aktivierung, da noch alles unter XP läuft und Win10 für den Compiler nötig war. Durch das hin und her zwischen XP und 10 war die Zeit für die kostenlose Aktivierung abgelaufen. Ein weiterer Grund für Delphi4 ist, dass ich mich in die Eigenschaften der Objekte eingearbeitet und auch spezielle Erwiterungen dafür erstellt habe. Bei einer neuen Version muß ich mich wieder neu einarbeiten.
Ich werde Deine Tipps ausprobieren und berichten!

Frühlingsrolle, Deinen Tipp werde ich auch probieren. Auch die Dateigröße ist natürlich ein Grund. Bin gespannt ob es diesmal was wird.

Grüße von der Nordsee

Peter
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 489
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Mo 12.12.16 17:45 
Ein freundliches Hallo an alle,

leider hat es nicht funktioniert. Die Lösung "www.delphipraxis.net...e-faehig-machen.html" sah so einfach aus, aber es scheiterte an "UnicodeToUtf8". Diese Funktion ist nicht in der Unit enthalten und auch nicht in Delphi 4.

Die andere Lösung sieht sehr aufwendig aus. Label habe ich dort noch nicht gefunden.

Grüße von der Nordsee

Peter
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 12.12.16 18:49 
- Nachträglich durch die Entwickler-Ecke gelöscht -
ub60
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 762
Erhaltene Danke: 127



BeitragVerfasst: Mo 12.12.16 20:39 
user profile iconPeter18 hat folgendes geschrieben Zum zitierten Posting springen:
... aber es scheiterte an "UnicodeToUtf8". Diese Funktion ist nicht in der Unit enthalten und auch nicht in Delphi 4.

Eventuell hilft es ja, sich diese Funktion von Lazarus "auszuborgen". Dort findet man die Funktion in der "lazutf8.pas".

ub60
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 13.12.16 08:15 
Zu UnicodeToUtf8 fällt mir sonst nur Utf8Encode ein. Vielleicht gibt es die ja schon.
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 489
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Di 13.12.16 14:00 
Hallo Frühlingsrolle,

Dank Dir für die Antwort. Leider ist es nicht so einfach. Es müssen auch TntClasses, TntSysUtils und TntControls in das Projekt übernommen werden und dann meckert der Compiler über "TCustomListControl". Scheint also mit einigem Aufwand verbunden zu sein.

Hallo ub60,

Dank auch Dir! Ich habe einiges von Lazarus, aber die LCL ist nicht dabei. Bisher habe ich nur eine DLL gefunden. Hast Du einen Link oder kannst Du mir die "lazutf8.pas" oder die "UnicodeToUtf8" zur Verfügung stellen?

Hallo Sebastian,

Auch Die meinen Dank. Leider kennt mein Compiler "Utf8Encode" nicht.


Ich habe diesen DummyClient geschrieben, da auf den Prüfungsrechnern kein Mailclient eingerichtet war. Die Teilnehmer waren zum Teil erst kurze Zeit in Deutschland und brauchten einige Zeit die Aufgaben zu übersetzen und zu verstehen. Zum besseren Verständnis habe ich die Möglichkeit eingebaut, zwischen Deutsch und Englisch unzuschalten. Da aber auch Teilnehmer aus dem arabischen Sprachraum kommen dachte ich "mach ich mal eben".

Es geht also nicht um eine prinzipielle, sondern um eine einfache und schelle Lösung. Vielleicht ist die Idee vun ub60 die schnellste Lösung.

Grüße von der noch immer wolkigen Nordsee

Peter
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 13.12.16 17:20 
- Nachträglich durch die Entwickler-Ecke gelöscht -
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Di 13.12.16 20:16 
user profile iconPeter18 hat folgendes geschrieben Zum zitierten Posting springen:
Es geht also nicht um eine prinzipielle, sondern um eine einfache und schelle Lösung. Vielleicht ist die Idee vun ub60 die schnellste Lösung.
Ich habe mal nachgeschaut. In Delphi 4 gibt es im Quelltext keine Utf8 Funktionen. Das dort nachzubauen mit dem kopierten Quelltext wird wohl kaum schneller gehen als das Projekt sauber auf Delphi 10.1 Starter zu bringen... insbesondere weil da ja noch mehr an Problemen folgen könnte.

Und zudem wird es unter 10.1 auch sauberer laufen, insbesondere auf Windows Vista und höher.
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 489
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Mi 14.12.16 14:48 
Hallo Frühlingsrolle,

Dank Dir nochmals! Deinen Vorschlag werde ich mir ansehen. Die erste Sichtung sieht sehr interessant aus.


Hallo Sebastian,

auch Dir nochmals Dank!

Inzwischen ist es mir gelungen über unsere Buschtrommel Delphi 10.1 Starter unter Win 10 einzurichten (Stunden später). Der erste Eindruck: Scheint etwas unübersichtlicher zu sein als Delphi 4, auch die Hilfe. Aber das kann eine Frage der Gewöhnung sein.

Was mich jedoch besonders stört ist, dass das Fenster beim Debuggen auf den linken Monitor springt. Dort möchte ich meine Anwendung sehen und auf dem Rechten die Quellen. Kann man Ihm das abgewöhnen?

Die laufende Entwicklung werde ich aber mit Delphi 4 fortsetzen. Auch wegen der Dateigröße: Mail_Client mit Delphi 4 ==> 310K mit Delphi 10.1 Starter ==> 2144K. Natürlich auch wegen bereits entwickelter Komponenten und anderen Gründen.

Grüße von der wieder wolkigen Nordsee

Peter
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Mi 14.12.16 20:33 
user profile iconPeter18 hat folgendes geschrieben Zum zitierten Posting springen:
Was mich jedoch besonders stört ist, dass das Fenster beim Debuggen auf den linken Monitor springt. Dort möchte ich meine Anwendung sehen und auf dem Rechten die Quellen. Kann man Ihm das abgewöhnen?
Du kannst das Fenster dorthin schieben wo du willst und dann oben neben der Desktopauswahl, wo so etwas wie Debug-Desktop steht, auf Desktop speichern klicken. Daraufhin ist die Fenster Konfiguration immer so.
Peter18 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 489
Erhaltene Danke: 2


Delphi4
BeitragVerfasst: Do 15.12.16 18:58 
Hallo Sebastian,

nochmals Dank! Hat geholfen.

Grüße von der noch immer wolkigen Nordsee

Peter