Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Türkische Zeichen im Quellcode (https://www.delphipraxis.net/108388-tuerkische-zeichen-im-quellcode.html)

davar 12. Feb 2008 22:28


Türkische Zeichen im Quellcode
 
Hallo Leute,

ich würd gern türkische Zeichen (ç, ş, ı, ğ) über den Quellcode anzeigen lassen. Also ganz einfach mit

Delphi-Quellcode:
showmessage('ç, ş, ı, ğ');
aber ich bekomme ganz einfach den Text

c, s, i, g

Weiss jemand, ob und wie das geht? Eine Änderung von Form.Font.Charset auf TURKISH_CHARSET bringt auch nichts, weil hier die Zeichen ja direkt in den Quelltext eingegeben werden.

Danke im voraus.

MfG

davar

webcss 12. Feb 2008 22:56

Re: Türkische Zeichen im Quellcode
 
du brauchst unicode fähige componenten

Bernhard Geyer 13. Feb 2008 07:44

Re: Türkische Zeichen im Quellcode
 
Suchbegriffe sind ElPack, TNT Ware oder einfach auf Delphi 2008 warten welches dann auch unter Win32 Full Unicode-Enabled sein soll.

semo 13. Feb 2008 07:47

Re: Türkische Zeichen im Quellcode
 
die TNT controls können das.
Mittlerweile hat TMS Software die aufgekauft.

Freie ältere Versionen sind aber noch im Netz verfügbar.

Aurelius 13. Feb 2008 08:48

Re: Türkische Zeichen im Quellcode
 
Bitte sehr:
http://tom.osdevel.org/index.php/pro...code-controls/

Assertor 13. Feb 2008 09:16

Re: Türkische Zeichen im Quellcode
 
Hi,

Zitat:

Zitat von xX0815Xx

dann aber bitte von hier:
http://www.yunqa.de/delphi/doku.php/...vi09mt6i6r7f76

Sind doch etwas aktueller ;)

Gruß Assertor

christian_u 13. Feb 2008 10:36

Re: Türkische Zeichen im Quellcode
 
Lazarus kann das mittlerweile von Hause aus.

Aurelius 13. Feb 2008 10:40

Re: Türkische Zeichen im Quellcode
 
Huch, da hab ich wohl den falschen Link erwischt :)

Delphi wird das auch bald von Haus aus können ;)

Assertor 13. Feb 2008 12:13

Re: Türkische Zeichen im Quellcode
 
Hi Jonas,

Zitat:

Zitat von xX0815Xx
Huch, da hab ich wohl den falschen Link erwischt :)

Macht ja nichts.

Zitat:

Zitat von xX0815Xx
Delphi wird das auch bald von Haus aus können ;)

Ja, ich warte auch gespannt auf den Hai (Tiburón). Weiß jemand da schon was von einer Tech Preview o.ä.?

Gruß Assertor

davar 13. Feb 2008 15:56

Re: Türkische Zeichen im Quellcode
 
Also jetzt hab ich es runtergeladen und installiert. Die Tool-Palette ist um einige Komponenten reicher aber ich bin immer noch da wo ich angefangen habe. Was muss ich denn jetzt tun?

Aurelius 14. Feb 2008 06:40

Re: Türkische Zeichen im Quellcode
 
Du musst einfach die Felder, in dem der text ausgegeben wird, mit dem äquivalenten TNT-Control ersetzen.

Tyrael Y. 14. Feb 2008 07:25

Re: Türkische Zeichen im Quellcode
 
Zitat:

Zitat von xX0815Xx
Du musst einfach die Felder, in dem der text ausgegeben wird, mit dem äquivalenten TNT-Control ersetzen.

Gibt es bei den TNT-Controls auch ein Pendant zu ShowMessage oder MessageDlg?

Weil soweit ich das vom Anfangsposting her lese möchte er ja genau das erreichen.

Aurelius 14. Feb 2008 07:28

Re: Türkische Zeichen im Quellcode
 
Ui, das kann ich jetzt nicht sagen, galube aber eher nicht (da es ja nur Controls sind). Man könnte aber ein eigenes ShowMEssage nehmen, in der ala Parameter ein WideString anstelle eines Strings genutzt wird. Weiß aber nicht ob bzw. wie das geht...

Bernhard Geyer 14. Feb 2008 08:05

Re: Türkische Zeichen im Quellcode
 
Zitat:

Zitat von Tyrael Y.
Gibt es bei den TNT-Controls auch ein Pendant zu ShowMessage oder MessageDlg?

TNTDialogs.pas WideShowMessage und WideMessageDlg.

Aurelius 14. Feb 2008 08:13

Re: Türkische Zeichen im Quellcode
 
OK, gibts dann wohl doch :D

davar 14. Feb 2008 08:26

Re: Türkische Zeichen im Quellcode
 
Das ist des Problems Lösung.

Danke an alle, die geholfen haben.


MfG

davar

Tillie 24. Feb 2008 13:22

Re: Türkische Zeichen im Quellcode
 
Hallo,

ich habe nochmal eine Nachfrage zu demselben Problem. (also Verwendung von Unicode in Delphi zwecks Darstellung türkischer Buchstaben) Habe Delphi 2006 installiert.

Nach der Lektüre des Forums habe ich TNT Unicode Controls 2.3.0 runtergeladen. Weiter bin ich aber leider noch nicht gekommen, denn ich hab keine Erfahrung mit der integrierung externer Komponeten in Delphi.

Ich habe versucht einige der Delphi Packages aus den entpackten Ordnern d9 / d7 / d6 / bds4 in Delphi zu öffnen und auszuführen aber dabei kriege ich immer nur verschiedenste Fehlermeldung.
Kann das überhaupt funktionieren? (die Packages scheinen ja für aelterere Delphi Versionen gedacht zu sein)? bzw. bin ich das generell falsch angegangen?

Über eine Antwort würde ich mich freuen,
Liebe Grüsse,
Tillie

davar 25. Feb 2008 09:39

Re: Türkische Zeichen im Quellcode
 
Hallo Tillie,

starte dein Projekt und gebe unte Projekt -> Optionen -> Verzeichnisse/Bedingungen -> Suchpfad den Unterordner "Source" der TntUnicodeControls ein. Dann sollte es laufen.

Und: Delphi2006 ist BDS4.

MfG

davar

Tillie 25. Feb 2008 11:53

TNT Komponenten inst. / Drittkomp. nicht lizenziert?!
 
Danke erstmal für deine Antwort, davar.
Hm, njein mein Problem war ja noch viel grundständiger? Es ging erstmal um die Installation der TNT Komponenten an sich.

Wusste nicht wie ich das mache. Nun habe ich mal die Project Files aus dem Ordner bds4 in Delphi geöffnet und auf installieren gedrückt bekam aber die schöne Meldung "Das Laden von Drittkomponenten und IDE-Addins ist bei dieser Version nicht lizenziert". :(

1) War der Weg zur Installation denn so richtig?
2) Besagte Version stammt von der Borland Delphi Webseite und Lizenz auch von da. Bei welchen Versionen und Lizenzen sind denn Drittkomponenten erlaubt?

Freue mich weiterhin über Rückmeldungen!

Liebe Grüße,
Tillie

davar 25. Feb 2008 12:21

Re: TNT Komponenten inst. / Drittkomp. nicht lizenziert?!
 
Hi Tillie,

um welche Version handelt es sich denn genau?

MfG

davar

jaenicke 25. Feb 2008 12:32

Re: Türkische Zeichen im Quellcode
 
Du kannst bei Delphi 2006 durchaus weitere Komponenten installieren, nicht aber bei der kostenlosen Turbo Explorer Variante davon.
Bei dieser Version musst du den Pfad zu den Units wie davar geschrieben hat in den Suchpfad eintragen und dann die Komponenten manuell per Quelltext erzeugen. Und natürlich müssen die entsprechenden Units der Komponenten in die uses-Liste.
(Funktionen wie WideShowMessage kann man ja ohnehin direkt nach Einbindung der Unit in uses benutzen.)

Tillie 25. Feb 2008 19:14

Re: Türkische Zeichen im Quellcode
 
jucheiiiiiiiiiiiiiiii :dancer:

:kiss: Ein dicker Kuss an jaenicke und ein zweiter an davar!

Sorry die Ungenauigkeit mit der Version, war (und bin) da selbst etwas unschlüssig. Also, ja diese Version war kostenlos, ja das ist dann wohl die Turbo Delphi Explorer Variante (?), wobei in der Versionsinfo nun wiederum 'Borland® Developer Studio for Windows' steht und das Program als 'Delphi 2006' startet *verwirrt*
Wie auch immer auf diese Weise hat es funktioniert, also Suchpfad+UsesEntsprechendeUnit+TNTFunktion aufrufen.

Vielen, Vielen Dank! :cheer:

Tillie 25. Feb 2008 23:24

Weiter gehts: TNT Form und Komponenten
 
Also nach ehrlichem Jubel über die gelungene Einbindung der TNTFunktion. Inzwischen ist mir klar geworden, das es da grad erst anfaengt :coder2:

Ganz simple z.B. TForm + TLabel + Label1.Caption

Wie wird das nun (manuell weil ja Komponenten in dieser Version nicht installierbar)zu TTnTForm und TTntLabel? (+ Label1.Caption als Unicode)
Die entsprechenden Units sind - so glaube ich zumindest - TNTForms.pas (TTntForm) und TntStdCtrls.pas (TTntLabel).

So dachte ich mir: entsprechende Delphi Komponenten arrangieren, TNT Units integrieren und dann Komponenten umbenennen in TNT Komponenten


Hat aber nicht funktioniert. Delphi sucht bei Programmstart immer wieder die Originale und bricht ab.

Kann mir jemand ein funktionierendes Beispiel für die Umbenennung posten oder auch ein laengeres Beispiel wo ich sehen kann wie verschiedene TNT Komponenten 'manuell' eingebunden werden können / Eigenschaften veraendert werden koennen?


Das momentane Ziel sollte übrigens sein TLabel mit Unicode zu beschriften.


Erstmal soweit, freue mich wenn sich ein/e Geduldige/r mir annimmmt..... :oops:


((((By the way was kostete den die Drittkomponentenfaehige Version?)))))

jaenicke 25. Feb 2008 23:49

Re: Türkische Zeichen im Quellcode
 
Das Problem ist, dass die Komponenten in der Delphi IDE ja nicht vorhanden sind und deshalb ja dort auch nicht gefunden und angezeigt werden können.
Deshalb musst du die Komponenten manuell erzeugen, wie ich es auch geschrieben hatte. Beispiel:
Delphi-Quellcode:
  with TLabel.Create(Self) do
  begin
    Parent := Self;
    Left := 10;
    Top := 50;
    Width := 100;
    Top := 40;
    Caption := 'Test';
  end;
Das ist natürlich etwas mehr Arbeit, allerdings wäre die Einschränkung sonst ja auch nicht wirkungsvoll ;-).
Ein Freund bastelt sich mit Delphi 2005 PE die Oberfläche zusammen und benutzt dann ein Tool zur Umwandlung des Codes in der .dfm Datei (der Formulardefinitionsdatei) in manuell benutzbaren Code:
http://www.delphicity.com/dfmtosrc/

Zitat:

Zitat von Tillie
((((By the way was kostete den die Drittkomponentenfaehige Version?)))))

Delphi 2007 für Win32 Professional kostet 921 Euro, das ist die neueste Version:
http://www.delphipraxis.net/dpX_marktplatz.php
Billiger gibts die Turbo Explorer Professional Version, die eben die 2006er Version ist, diese kostet 399 Euro:
http://www.delphi-forum.de/shop.php?groupid=2
Billiger gibt es Versionen für Schüler, Studenten und Lehrer, wie genau dies bei der neuesten Version jetzt aussieht, weiß ich aber nicht.

Tillie 26. Feb 2008 13:18

Sooooo viele Fragen zu manuellen Tnt Komponenten
 
Ehrlich gesagt versteh ich das jetzt noch nicht so wirklich. Wo soll dieser Quellcode denn hin? Und gehört da nicht noch mehr dazu? Und wieso habe ich dann am Ende eine Tnt Komponente??! Und was ist nun mit der TNT Unit - wo besteht die Verbindung dazu, ich mein im prinzip werden dort doch die Komponenten auch erstellt oder sehe ich das falsch? Warum konnte ich eigentlich die Funktion verwenden aber nicht die Komponenten?

Auf die Schreibarbeit kommt es nicht an, ich finde es auch interessant mal Komponenten selbst zu erstellen statt nur per Drag und Drop Vorgefertigtes zu verwenden.

Doch wie das nun geht habe ich so noch nicht verstanden.
İch würde mich freuen das noch genauer erklaert zu bekommen!!!!

Liebe Grüsse, Tillie :spin:


Das mit dem Programtip behalt ich mal im Hinterkopf, und die Programm-Preise haben sich ja gewaschen.... na ja haett ich mir auch denken können :roteyes:

jaenicke 26. Feb 2008 13:32

Re: Sooooo viele Fragen zu manuellen Tnt Komponenten
 
Zitat:

Zitat von Tillie
Wo soll dieser Quellcode denn hin? Und gehört da nicht noch mehr dazu? Und wieso habe ich dann am Ende eine Tnt Komponente??! Und was ist nun mit der TNT Unit - wo besteht die Verbindung dazu, ich mein im prinzip werden dort doch die Komponenten auch erstellt oder sehe ich das falsch? Warum konnte ich eigentlich die Funktion verwenden aber nicht die Komponenten?

Aaaalso :-D :
1. Der Code gehört vermutlich am besten nach OnCreate deines Formulars, denn du willst die Komponenten ja direkt nach der Erzeugung des Formulars zur Verfügung haben.
2. Der Code reicht schon, damit wird ein Label erstellt, wenn du weitere Eigenschaften ändern willst, musst du das natürlich noch tun.
3. Mit dem Code hast du einen normalen Label, das sollte nur ein Beispiel sein, wie man eine Komponente manuell erzeugt ;-). Das muss dann natürlich TTntLabel oder so heißen.
4. In den TNT-Units werden die Komponenten nur definiert, erzeugt werden diese erst, wenn du die auf ein Formular packst oder per Quelltext selbst Instanzen der Komponenten erstellst.
5. Eine Funktion ist einfach nur ein Codeteil, der direkt aufgerufen und ausgeführt werden kann. Eine Komponente muss zuerst erstellt werden. Und das sollte manuell so gehen, wie ich es geschrieben habe.

Tillie 26. Feb 2008 14:17

Re: Türkische Zeichen im Quellcode
 
:dancer:


Musste zwar noch ein bissl rumbasteln, doch jetzt funktionierts!!!!
Danke dir vielmals, Sebastian. :thumb:


So, und damit sich die Nachwelt auch noch dran erfreuen kann:
Delphi-Quellcode:
program Project1;

uses
  Forms,
  tntstdctrls,
  Unit1 in 'Unit1.pas' {Form1};

{$R *.res}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);

  with TtntLabel.Create(Form1) do
  begin
    Parent := Form1;
    Left := 10;
    Top := 50;
    Width := 100;
    Top := 40;
    Caption := 'ı ğ ç - ganz nach Belieben :)';
  end;
   Application.Run;
end.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:08 Uhr.

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