如何控制RichEdit 的文字底色 |
答題得分者是:hagar
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
banson1716
高階會員 發表:55 回覆:182 積分:167 註冊:2002-04-14 發送簡訊給我 |
form1上放一button,richedit,在richedit輸入一些字後,反白你要的字
(可以選一個或以上),按button.就可單獨變色了..不過以後所打的字都
會變成這個顏色,可自行修改程式,再變一次顏色..就可變回來了.
unit Unit1; interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms, Dialogs, StdCtrls, ComCtrls; type TCharFormat = record
cbSize: UINT;
dwMask: Longint;
dwEffects: Longint;
yHeight: Longint;
yOffset: Longint;
crTextColor: TColorRef;
bCharSet: Byte;
bPitchAndFamily: Byte;
szFaceName: array[0..LF_FACESIZE - 1] of AnsiChar;
end; TForm1 = class(TForm)
Button1: TButton;
RichEdit1: TRichEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
procedure changecolor(a,b,c:byte);
end; var Form1: TForm1; implementation
{$R *.dfm}
procedure TForm1.changecolor(a,b,c:byte);
var
CharFormat : TCharFormat;
const EM_GETCHARFORMAT=WM_USER 58;
const EM_SETCHARFORMAT=WM_USER 68;
Const SCF_SELECTION = $1 ;
begin
ZeroMemory(@CharFormat, SizeOf(TCharFormat));
with CharFormat do begin
cbSize := SizeOf(TCharFormat);
{先取得原本char的charfotmat}
RichEdit1.Perform(EM_GETCHARFORMAT, 1, LParam(@CharFormat));
{更改顏色}
crTextColor:=rgb(a,b,c);
RichEdit1.Perform(EM_SETCHARFORMAT, SCF_SELECTION, LParam(@CharFormat));
end;
RichEdit1.SetFocus;
RichEdit1.SelLength := 0;
end; procedure TForm1.Button1Click(Sender: TObject);
begin
changecolor(255,44,55);
end; end.
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
Justmade
版主 發表:94 回覆:1934 積分:2030 註冊:2003-03-12 發送簡訊給我 |
Rich Text Format (RickEdit 使用的格式) 應是根本不支援文字底色的 ?? 連 WordPad 都做不到耶... Hagar 版主提供的應是如何改變選取文字時的底色而不是真的改變文字底色,一離開便還原了。 banson1716 兄提供的應是另類的改變文字顏色方法,效果應跟 RichEdit1.SelAttributes.Color := rgb(a,b,c); 沒甚麼分別罷 ? 這應是 Rick Text 格式跟本沒這種格式的問題,不大可能在 RichEdit 解決。 你可試找找有沒有 HTML Editor 是使用 HTML格式的那便有可能做得到。
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
>>你可試找找有沒有 HTML Editor 是使用 HTML格式的那便有可能做得到。 Justmade兄 我在深度歷險找到一個元件
TRichView component can contain:
- background bitmap,
- text with various fonts and colors,
- hypertext,
- pictures,
- pictures from Image Lists,
- any Delphi controls.
It can be printed and saved as plain text or html file. 我想這樣應該可以做到了吧
謝謝您喔
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
|
Nelson Lo
一般會員 發表:35 回覆:87 積分:24 註冊:2003-04-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |