Delphi-PRAXiS

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/)
-   -   Delphi HTML Tags (https://www.delphipraxis.net/96766-html-tags.html)

Störtebeker 30. Jul 2007 17:55


HTML Tags
 
Hallo,

folgendes: ich möchte ein Programm schreiben, dass sowohl die normalen Schreibprogammfunktionen hat und wenn man möchte, kann man auch die HTML funktionen aktivieren.

Zu meinem Problem: Sagen wir ich habe ein Mainmenü mit Extras --> HTML --> Html. Ich möchte, dass wenn ich auf Html gehe, dass dann im TRichedit automatisch die Zeilen

<html>
</html>

eingefügt werden.

Und dass das html dann z.B. blau gefärbt ist. Und was ebenfalls günstig wäre, dass wenn ich den Tag per hand eingebe und der Text in <> gesetzt wird, dann automatisch blau wird.

r2c2 30. Jul 2007 19:24

Re: HTML Tags
 
Gute, Idee, mach das so.

...

Du hast ne andere ANtwort erwartet? Dann wär ne Frage gut...


Na gut, ich will mal nicht so sein:
Zitat:

Zitat von Störtebeker
Zu meinem Problem: Sagen wir ich habe ein Mainmenü mit Extras --> HTML --> Html. Ich möchte, dass wenn ich auf Html gehe, dass dann im TRichedit automatisch die Zeilen

<html>
</html>

eingefügt werden.

TString.Add + F1

Zitat:

Und dass das html dann z.B. blau gefärbt ist. Und was ebenfalls günstig wäre, dass wenn ich den Tag per hand eingebe und der Text in <> gesetzt wird, dann automatisch blau wird.
SynEdit + Suche hier


mfg

Christian

Störtebeker 30. Jul 2007 20:07

Re: HTML Tags
 
Ich verstehe irgendwie den Sinn dahinter nicht ganz. Hättest einfach sagen können, ich soll in der Hilfe gucken.

Und zu meiner Frage: Wie kann ich sowas realisieren??

Matze 30. Jul 2007 20:20

Re: HTML Tags
 
Selbst einen performanten und guten Highlighter zu schreiben ist nicht so einfach und ob das flott mit dem RichEdit geht, weiß ich nicht. Aber das SynEdit bringt alles mit, was du benötigst (und noch viel viel mehr). Das meinte Christian.

Störtebeker 30. Jul 2007 20:32

Re: HTML Tags
 
Thx. Matze & Sry, r2c2.

Habe mir jetzt SynEdit runtergeladen. Zum einen habe ich da 3 verschiedene Packages:

SynEdit_D6.dpk
SynEdit_D6_CLX.dpk
SynEdit_D6_PE.dpk

ich selber arbeite mit D6 Enterprise. Und wenn ich eines der Packages öffne, sagt Delphi mir folgendes:

"Cannot find resource file C:\...\SynEdit-2_0_6\SynEdit\Packages\SynEdit_D6.res. Recreated."

Und bei der anzahl an files, möchte ich die nur ungern einzeln installieren.

3_of_8 30. Jul 2007 20:40

Re: HTML Tags
 
Ganz einfach: Wenn du die Personal hast, nimmst du die -PE, ansonsten die andere. (NICHT die CLX)

Die Meldung mit dem Resource-File kannst du ignorieren.

Störtebeker 30. Jul 2007 21:09

Re: HTML Tags
 
ok. funzt. mit dem installieren. Wenn ich das programm starten möchte, makiert er mir in den "uses" >>SynEdit<< rot, mit der meldung file not found: SynEdit.dcu. Den Pfad habe ich schon zur library hinzugefügt. Und die SynEdit.dcu ist im Packageordner zu finden. Also in dem Ordner, wo auch die Synedit_D6.dpk zu finden ist.

Muss ich die SynEdit.dcu noch anders integrieren?

mkinzler 30. Jul 2007 21:10

Re: HTML Tags
 
Die dcu könnte von einer falschen Delphi-Version stammen. Benenne sie mal um

Störtebeker 30. Jul 2007 21:20

Re: HTML Tags
 
das problem hat sich gelöst, da war noch ne andere SynEdit.dcu in einem der anderen Ordner, die noch im SynEdit Hauptordner waren. Doch jetzt habe ich was, womit ich überhaupt nicht gerechnet habe:

Delphi-Quellcode:
program Project2;

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

{$R *.res}

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

program Project2;
mit folgender Meldung:
file not found: System.pas.

WAT NU???

ich glaube das hat nichts mit SynEdit zu tun, oder? Dies passiert wenn ich den Ordner zu SynEdit.pas in die Library eintrage. Also, hat es wahrscheinlich doch was damit zu tun? PLEASE HELP!!

mkinzler 30. Jul 2007 21:26

Re: HTML Tags
 
Findet er sie ohne SynEdit?

Störtebeker 30. Jul 2007 21:38

Re: HTML Tags
 
Ja. Ohne findet er sie, kann das Programm aber trotzdem nicht starten, weil ihm dann die SynEdit fehlt. Also Delphi findet die System.dcu , wenn ich den Pfad von SynEdit.dcu nicht in die Library einfüge. Dann kann er das Programm starten. Natürlich ohne irgendeine SynEdit Komponente.

Störtebeker 30. Jul 2007 23:33

Re: HTML Tags
 
Das Problem mit SynEdit hat sich erledigt. :lol: Es lag an folgendem Problem:

Die SynEdit.zip enthält folgende Ordner:

-Demos
-Packages
-Source
-SynGen

Ich habe nach der Installation von SynEdit die Delphi Library mit dem Packages Ordner erweitert. Ich darf aber die Library aber NUR mit dem Source Ordner erweitern. :!: Also dem, wo praktisch die einzelnen SynEdit Komponenten drin sind. Dann funktioniert es. Aber trotzdem THX. für eure Hilfe. Vielleicht kann sich das ja einer von euch erklären. Hauptsache es funkioniert!! Und das tut es nun. :lol:

Störtebeker 30. Jul 2007 23:52

Re: HTML Tags
 
Trotzdem noch mal ne Frage:

Delphi-Quellcode:
begin
SynEdit1.Lines.add('<html></html>');
end;
mit diesem code setzte ich über Klick im mainmenü die Tags "<html>" und "</html>"

Das sieht dann im Editfenster folgendermaßen aus:

<html></html>

gibt es die möglichkeit den code so zu ändern, das folgendes herauskommt:

<html>

</html>


P.S.: SynEdit ist doch Freeware, oder?

Namenloser 31. Jul 2007 00:05

Re: HTML Tags
 
Delphi-Quellcode:
with synedit1.lines do
begin
  add('<html>');
  add('');
  add('</html>');
end;
oder
Delphi-Quellcode:
synedit1.lines.add('<html>'#13#10#13#10'</html>';
Hättest du aber auch selbst drauf kommen können :wink:

Achja: SynEdit ist natürlich Freeware :wink:

Störtebeker 31. Jul 2007 00:13

Re: HTML Tags
 
Danke.

Zitat:

Delphi-Quellcode:
with synedit1.lines do
begin
  add('<html>');
  add('');
  add('</html>');
end;

hat funktioniert

Zitat:

oder
Delphi-Quellcode:
synedit1.lines.add('<html>'#13#10#13#10'</html>';

hat nicht funktioniert

und gleich die nächste frage, sry.

Im SynEditfeld kann ich im OI ja die Highlighter wählen, die dann praktisch irgendwie hervorgehoben werden. Allerdings nur jeweils einen Highlighter. Also ich kann jetzt zum Beispiel nicht HTML Highlighter UND JavaScript Highlighter aktivieren, oder?

Und wie kriege ich das hin, das der text dort eingesetzt wird, wo der cursor ist? Der Text wird nämlich immer hinten dran gehängt. SRY., ist bestimmt Delphi-Grundwissen. :oops: :oops:

Mit

Delphi-Quellcode:
procedure TForm2.script1Click(Sender: TObject);
begin
with synedit1.SelText.lines do
begin
  add('<script language="JavaScript">');
  add('<!--');
  add('');
  add('//-->');
  add('</script>');
  add('<noscript></noscript>');
end;
end;
geht es jedenfalls nicht.

Blackheart 31. Jul 2007 06:00

Re: HTML Tags
 
Delphi-Quellcode:
SynEdit1.SelText:='Mein an Cursorposition eingesetzter Text';

hincapie 31. Jul 2007 07:14

Re: HTML Tags
 
Zitat:

Zitat von Störtebeker
Im SynEditfeld kann ich im OI ja die Highlighter wählen, die dann praktisch irgendwie hervorgehoben werden. Allerdings nur jeweils einen Highlighter. Also ich kann jetzt zum Beispiel nicht HTML Highlighter UND JavaScript Highlighter aktivieren, oder?

Schau mal auf diesen Seiten nach TSynWebSyn, das ist ein Highlighter u. a. für HTML, PHP und Javascript:
- http://sourceforge.net/projects/synweb
- http://flatdev.ovh.org

Störtebeker 31. Jul 2007 10:16

Re: HTML Tags
 
Wie ist den der Code für den Zeilenumbruch?

Delphi-Quellcode:
begin
SynEdit1.seltext:='<script language="JavaScript">';
SynEdit1.seltext:='<!--';
SynEdit1.seltext:='';
SynEdit1.seltext:='//-->';
SynEdit1.seltext:='</script>';
SynEdit1.seltext:='<noscript></noscript>';
end;
dort macht er nämlich folgendes:

<script language="JavaScript"></script><noscript></noscript>

es soll aber folgendermaßen aussehen:

<script language="JavaScript">
<!--

//-->
</script>
<noscript></noscript>

und dass funzt mit dem code nicht.
Mit dem anderen code:

Delphi-Quellcode:
procedure TForm2.script1Click(Sender: TObject);
begin
with synedit1.SelText.lines do
begin
  add('<script language="JavaScript">');
  add('<!--');
  add('');
  add('//-->');
  add('</script>');
  add('<noscript></noscript>');
end;
end;
funzt zwar das mit den absätzen, aber nicht mit dem SelText. :?

arbu man 31. Jul 2007 10:55

Re: HTML Tags
 
Delphi-Quellcode:
string := #13#10+'Ich steh in einer Zeile'+#13#10+'Ich in einer anderen :('

Störtebeker 31. Jul 2007 11:00

Re: HTML Tags
 
Danke, funzt super. :lol:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:06 Uhr.

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