procedure TForm1.Button1Click(Sender: TObject);
var
findat : integer; //キャレットの位置
begin
findat :=0;
repeat
//edit1に格納されている文字列を探す
findat :=
richedit1.findtext(edit1.text,findat,length(richedit1.text),[stMatchCase]);
richedit1.setfocus ; //focusをセット(いらないかも)
richedit1.SelStart := FindAt; //キャレットのスタート位置
richedit1.SelLength := Length(edit1.text); //選択範囲
richedit1.selattributes.style := [fsbold] ; //bold指定
richedit1.selattributes.color := clred ; //色指定
richedit1.perform(EM_SCROLLCARET,0,0);
//キャレットの移動にあわせて画面をスクロールさせる
findat := findat +length(edit1.text) ; //次の開始位置
//キャレットの位置が文字数をこえるまで
until richedit1.selstart >= length(richedit1.text);
richedit1.selstart :=0; //キャレットをトップにもどす
richedit1.perform(EM_SCROLLCARET,0,0); //画面をスクロールさせる
end;
edit1に入れた文字列をrichedit1上で検索し、その単語があれば赤色・ボールドに変える。
|