Unicode-Zeichen in Caption einer BDS2006-Komponente möglich?
-
Hallo Gemeinschaft,
da bin ich nach längerer Zeit mal wieder, ich hoffe es geht Allen gut! Hier meine Frage:
Ich arbeite mit BDS2006 und möchte auf einem Label einen griechischen Buchstaben darstellen (kleines Phi). Die fertige Anwendung soll ab XP laufen - also auf Systemen die mit Unicode arbeiten. Nun arbeitet doch aber BDS2006 komplett mit AnsiString, inklusive natürlich der String-Eigenschaften (Text, Caption, Name etc.)von Standard-Komponenten wie TLabel...
Wie kann ich TLabel->Caption jetzt dieses griechische Phi zuweisen?Danke schonmal für eure Mühen
MfG
-
Hallo
Gar nicht. Du brauchst entweder BDS2009, wo alle Standard-Controls bereits mit UnicodeString arbeiten. Oder du suchst dir im Internet eine externe Bibliothek, die den Builder um Unicode-Controls erweitert.
bis bald
akari
-
akari schrieb:
... Oder du suchst dir im Internet eine externe Bibliothek, die den Builder um Unicode-Controls erweitert.
Hallo akari,
Danke für deine Antwort, auch wenn sie mich erstmal nicht weiter bringt. Hast vielleicht gleich einen Tipp für eine solche externe Bibliothek?
MfG
-
Hallo
Früher habe ich TntUnicode benutzt, aber die sind jetzt kommerziell geworden. Irgendwie haben die aber zur Zeit eine sehr seltsame Homepage?!
Das alte freie Paket findest du zum Beispiel hier.bis bald
akari
-
Danke für die schnellen Antworten akari,
akari schrieb:
Früher habe ich TntUnicode benutzt, aber die sind jetzt kommerziell geworden.
Abgesehen davon, ist die freie Version ja weiterhin legal nutzbar, wenn ich den Hinweis auf der von dir geposteten Downloadseite richtig interpretiere. Jetzt brauchst du es sicherlich nicht mehr nutzen, weil du eine IDE benutzt, die Unicode voll unterstützt - stimmts?
akari schrieb:
Irgendwie haben die aber zur Zeit eine sehr seltsame Homepage?!
Loool... meine Eltern haben mich immer vor Drogen gewarnt - warum nicht vor Kirchen und Sekten!?
akari schrieb:
Das alte freie Paket findest du zum Beispiel hier.
Kannst du das Paket nach deiner Erfahrung bedingungslos für BDS2006 empfehlen?
MfG
Edit: ein "[" ergänzt...
-
Hallo
Kolumbus schrieb:
Jetzt brauchst du es sicherlich nicht mehr nutzen, weil du eine IDE benutzt, die Unicode voll unterstützt - stimmts?
Ich benutze jetzt Code::Blocks mit wxWidgets und mein Kollege BDS2009, wir brauchen keine weitere Unicode-Bibliothek.
Kannst du das Paket nach deiner Erfahrung bedingungslos für BDS2006 empfehlen?
Ich habe es im Builder 5 eingesetzt, da war es zu empfehlen.
bis bald
akari
-
akari schrieb:
Ich habe es im Builder 5 eingesetzt, da war es zu empfehlen.
Ok, ich hab's mir gezogen und werde mal versuchen es ins BDS einzubinden. Dann werde ich es anhand der Label-Komponente testen (die ist doch hoffentlich drin!?).
Zur seltsamen Homepage nochmal: In der ReadMe des Paketes finden sich Hinweise auf 2 weitere domains: www.tntmpd.com und www.cccgi.org ... das erklärt Einiges
MfG
-
Hmm... mir fehlt ein bissl die Erfahrung für die Installation eines Package...
Die ReadMe.txt des Package schreibt:---Delphi Installation--------------------------
The most simple way to install these components is by opening the appropriate design package in Delphi and clicking on the big "Install" button. For instance, Delphi 5's design package is TntUnicodeVcl_D50.dpk.
For BCB 2006 and newer, open the appropriate design package in the packages\bcbx\ folder using the Delphi personality. After compiling and installing, you should be able to use the components in both the Delphi and BCB personality. Remember to set the library path in menu "Tools->Options" for both the C++ Builder and the Delphi.
Die Ordnerstruktur des entpackten Tnt-Package-Ordner sieht so aus:
TntUnicodeControls_2.3.0 | |- CBuilder | |- Delphi | | | |- bds4 (TntUnicodeVcl.dpk, -.bdsproj, -.bdsproj.local, -.cfg, -.res) | | (TntUnicodeVcl_Design.dpk, -.bdsproj, -.bdsproj.local, -.cfg, -.res) | |- d6 | | | |- d7 | | | |- d9 | |- Design | |- Example | |- Source
Die TntUnicodeVcl.bdsproj und TntUnicodeVcl_Design.bdsproj habe ich jeweils geöffnet und die Projekte erzeugt. Nun habe ich im Ordner bds4 jeweils noch zusätzlich -.dcu, -.hpp und -.lib - Dateien...
Wie gehe ich jetzt weiter vor?
Wenn ich im BDS auf "Komponenten->Packages installieren..." drücke, will BDS *.bpl- oder *.dpc-Dateien haben!? Solche habe ich aber nicht!
Besten Dank für jede Hilfe!
MfG
Edit: Ich hab' jetzt mal den konkreten Teil der ReadMe der mir Probleme bereitet fett markiert. Wie soll dieses "installing" vonstatten gehen?
-
Hallo Gemeinschaft,
kann mir bezüglich der obigen Problematik viell. doch noch jemand etwas weiterhelfen?
MfG
-
Kolumbus schrieb:
Wenn ich im BDS auf "Komponenten->Packages installieren..." drücke, will BDS *.bpl- oder *.dpc-Dateien haben!? Solche habe ich aber nicht!
Doch, üblicherweise unter Eigene Dateien\Borland Studio-Projekte\bpl.
Alternativ sollte es möglich sein, im Kontextmenu des Projekt-Managers einfach "Installieren" auszuwählen
-
audacia schrieb:
Kolumbus schrieb:
Wenn ich im BDS auf "Komponenten->Packages installieren..." drücke, will BDS *.bpl- oder *.dpc-Dateien haben!? Solche habe ich aber nicht!
Doch, üblicherweise unter Eigene Dateien\Borland Studio-Projekte\bpl.
Vielen Dank - das war ja einfach...
Leider bin ich aus Stressgründen noch nicht dazu gekommen das Package zu testen.
MfG
-
Kolumbus schrieb:
... und möchte auf einem Label einen griechischen Buchstaben darstellen (kleines Phi).
Wenn du auf dem Label nur griechische Zeichen darstellen willst, dann könntest du auch einfach einen entsprechenden Font einbinden (z.B. "Symbol", welches das Ypsilon (sowohl y als auch Y) als Phi darstellt).
-
Kolumbus schrieb:
Wie kann ich TLabel->Caption jetzt dieses griechische Phi zuweisen?
Hi,
hab den Thread nochmal "ausgebuddelt".
Folgender Schnipsel bindet ein einzelnes Zeichen ausserhalb des momentanen Tastatur-Zeichensatzes in einen UnicodeString ein.
Dieses Zeichen muss im eingestellten Font der Komponente verfügbar sein.void __fastcall TForm1::Button3Click(TObject *Sender) { wchar_t phi = 0x3C6; // kleines phi. Den Wert holt man aus der Zeichentabelle UnicodeString UniStr = L"kleines phi: "; UniStr += phi; // versch. Fonts testen Label1->Font->Name = "Times New Roman"; Label1->Caption = UniStr; Label2->Font->Name = "System"; // phi ist in Font System nicht Label2->Caption = UniStr; // verfügbar Label3->Font->Name = "Courier New"; Label3->Caption = UniStr; } //---------------------------------------------------------------------------
edit: für BCB Version 2009
mfg
kpeter