AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

RichEdit VS SynEdit

Ein Thema von BullsEye · begonnen am 9. Feb 2009 · letzter Beitrag vom 9. Feb 2009
 
BullsEye

Registriert seit: 8. Sep 2007
Ort: Werlte
872 Beiträge
 
Delphi 7 Personal
 
#16

Re: RichEdit VS SynEdit

  Alt 9. Feb 2009, 19:21
Taugen die vorgefertigten Highlighter denn was? Ich mein, ich kenn jetzt nicht jede Programmiersprache bzw die Tags etc. Also von daher würde das schon einiges an Arbeit abnehmen.

EDIT: hm der PHP Highlighter taugt iwie so gut wie nichts. Noch weniger! Wie kann ich den manuell bearbeiten?

Ich hab mal nen Demo Programm angehängt. Wobei es hier mehr um die Funktion als um die Optik etc geht.

Mr Source:

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, SynHighlighterPHP, SynHighlighterHtml,
  SynEditHighlighter, SynHighlighterCSS, SynEdit, SynHighlighterIni,
  SynHighlighterSQL, SynHighlighterUNIXShellScript, SynHighlighterPython,
  SynHighlighterPerl, SynHighlighterBat, SynHighlighterXML,
  SynHighlighterVBScript, SynHighlighterJScript, SynHighlighterCpp,
  SynHighlighterCS, SynHighlighterVB, SynHighlighterPas, SynHighlighterJava;

type
  TForm1 = class(TForm)
    SynEdit1: TSynEdit;
    css: TSynCssSyn;
    html: TSynHTMLSyn;
    php: TSynPHPSyn;
    Button1: TButton;
    ComboBox1: TComboBox;
    OpenDialog1: TOpenDialog;
    Button2: TButton;
    Button3: TButton;
    SaveDialog1: TSaveDialog;
    java: TSynJavaSyn;
    pas: TSynPasSyn;
    vb: TSynVBSyn;
    c: TSynCSSyn;
    cpp: TSynCppSyn;
    js: TSynJScriptSyn;
    vbs: TSynVBScriptSyn;
    xml: TSynXMLSyn;
    bat: TSynBatSyn;
    perl: TSynPerlSyn;
    python: TSynPythonSyn;
    unix: TSynUNIXShellScriptSyn;
    sql: TSynSQLSyn;
    ini: TSynIniSyn;
    procedure ComboBox1Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  IF ComboBox1.ItemIndex = 0 THEN Synedit1.Highlighter := css;
  IF ComboBox1.ItemIndex = 1 THEN Synedit1.Highlighter := html;
  IF ComboBox1.ItemIndex = 2 THEN Synedit1.Highlighter := php;
  IF ComboBox1.ItemIndex = 3 THEN Synedit1.Highlighter := java;
  IF ComboBox1.ItemIndex = 4 THEN Synedit1.Highlighter := pas;
  IF ComboBox1.ItemIndex = 5 THEN Synedit1.Highlighter := vb;
  IF ComboBox1.ItemIndex = 6 THEN Synedit1.Highlighter := c;
  IF ComboBox1.ItemIndex = 7 THEN Synedit1.Highlighter := cpp;
  IF ComboBox1.ItemIndex = 8 THEN Synedit1.Highlighter := js;
  IF ComboBox1.ItemIndex = 9 THEN Synedit1.Highlighter := vbs;
  IF ComboBox1.ItemIndex = 10 THEN Synedit1.Highlighter := xml;
  IF ComboBox1.ItemIndex = 11 THEN Synedit1.Highlighter := bat;
  IF ComboBox1.ItemIndex = 12 THEN Synedit1.Highlighter := perl;
  IF ComboBox1.ItemIndex = 13 THEN Synedit1.Highlighter := python;
  IF ComboBox1.ItemIndex = 14 THEN Synedit1.Highlighter := unix;
  IF ComboBox1.ItemIndex = 15 THEN Synedit1.Highlighter := sql;
  IF ComboBox1.ItemIndex = 16 THEN Synedit1.Highlighter := ini;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  IF OpenDialog1.Execute THEN
    SynEdit1.Lines.LoadFromFile(OpenDialog1.FileName);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  SynEdit1.Lines.SaveToFile(SaveDialog1.FileName);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  close;
end;

end.
Angehängte Dateien
Dateityp: exe demo_139.exe (810,5 KB, 6x aufgerufen)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:30 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