HTMLエディターを作りたいのですが、ソースを色分けする方法がわかりません。
どなたか教えていただけませんか?
Delphiで手っ取り早く作成するなら本田 勝彦さんの
http://www.vector.co.jp/soft/win95/prog/se114384.html
使うの楽ですよ。
それはシェアウェア(旧版はフリー)だから質問内容に戻るとして、
TMemoでやる場合は、Ownerドロー
TRichEditでやる場合は、
RichEdit1.SelStart := 1;
RichEdit1.SelLength := 4;
RichEdit1.SelAttributes.Color := clRed;
1〜4文字目の文字色を赤にする。
どちらにしろ
http://swiss.torry.net/html.htmのHTMLParser等使うといい気がする。
>TMemoでやる場合は、Ownerドロー
これどうやるんですか?
はじめて聞きました。
TRichEditの色変更のサンプルは、
http://www2.big.or.jp/~osamu/Delphi/Tips/key.cgi?key=17#0216.txt
にあります。
TMemoをサブクラス化して、自前で描画するくらいなら、TCustomControlから継承した方がいいですよ。
それをすると、TEditorを作るのと同じになってしまいますが。
シェアウェアが取っつきにくいのであれば、
http://synedit.sourceforge.net/
フリーのカラー構文対応コンポーネントを使用すればよろしいかと思います。
# 以前のバージョンでは日本語関連が変でしたが、今どうなっているのかは未確認です
にしのさんも進めていますが、Syneditというコンポがいいですよ。
http://synedit.sourceforge.net/index.php
それとともに、サードパーティのUnihighlighterがいいです。
ハイライト設定をアプリケーションに組み込まなくてもいいですから。
間違い(^^;A
進めて->薦めて
すいません、ところで、コンポのインストール方法はわかるのですが、アンインストールはどうするのでしょうか?
教えてください。
http://homepage2.nifty.com/Mr_XRAY/Delphi/CompUnInstall.htm
が参考になれば幸いです.
すみません.
Syneditだと,たしかパッケージでのインストールだと思いましたが,
すると,パッケージのアンインストールですね.
[コンポーネント][パッケージのインストール]で該当する
パッケージを削除すればOKのはずです.
Sybeditを使ってみようと思ったのですが、どのファイルをインストールすればよいのでしょうか。
バージョンは何ですか。
2.00です。
Delphiのバージョンを知りたかったのですが、説明不足でしたね。
とりあえず、バージョンはパーソナルと仮定して、
PEっていうのがついている、パッケージをインストールすれば良いと思います。
Delphi6を使っているのですが、インストールしようとすると「SynEdit.dcuヶ見つかりません」と出るのですが、どうするのですか?
すいません、SynEdit.pasを見つけたので、パッケージに追加してコンパイルするとうまくいきました。
コンポーネントがどっさり登録されました。
何度もすいません。
テキストエディタのコンポーネントだと思っていたのですが、これは非ビジュアルコンポーネントですね。どうやって使うのでしょうか。
パーソナルではないのですね。
最初から書きます。
解凍したもの「ほにゃらら\SynEdit\Packages」の中にSynEdit_D6パッケージがあると思います。
これをインストールしてください。
ライブラリパスは事前に通してください。
非ビジュアルコンポーネント->これは何のことをさしているのでしょうか。
Unihighlighterですか。
書き忘れ(^^;A
SynEditとSynEdit Highlightersというパレットが登録されると思います。
SynEditはSynEditパレットの左側にあります。
SynEditのCharsetがDEFAULT_CHARSETになっていますが、
なぜか日本語が通らないのでSHIFTJIS_CHARSETにするといいと思います。
UniHighlighterのインストールパッケージはDelphi5,7しかないので、
SynUni_D5を使用します。
SynUni_D5を開いて、
requires
dsnide50,
SynEdit_D5;
を
requires
designide,
SynEdit_D6;
に書き直せばインストールできると思います。
SynEditが使い心地がよさそうなので、これを使わせていただくことにしました。
ありがとうございました。
ツイート | ![]() |