各位仁兄,谁能够提供一下段注释的代码。
例如这样
有一段文字
abcdefghiasf;lkajfl;dasjfdsa;fjas;lfdajfhgfajfdas;
fdjsa;fjdas;lfdjas;lfjdsa;lfdjsa
当我在其中加入大括号后
{abcdefghiasf;lkajfl;dasjfdsa;fjas;lfdajfhgfajfdas;
fdjsa;fjdas;lfdjas;lfjdsa;lfdjsa}
其中的这一段文字变成斜体或变色,这该怎么做,能否帮一下
100分求救
例如这样
有一段文字
abcdefghiasf;lkajfl;dasjfdsa;fjas;lfdajfhgfajfdas;
fdjsa;fjdas;lfdjas;lfjdsa;lfdjsa
当我在其中加入大括号后
{abcdefghiasf;lkajfl;dasjfdsa;fjas;lfdajfhgfajfdas;
fdjsa;fjdas;lfdjas;lfjdsa;lfdjsa}
其中的这一段文字变成斜体或变色,这该怎么做,能否帮一下
100分求救
1:Uses StrUtils,用AnsiIndexText得出{}是否成对;
2:利用下边的程序,来选择你的文本:
// 指定输入游标的位置
procedure SetCaret(RTF: TRichEdit; var Row, Col: word);
var
i, iStopLine, iSelStart: integer;
begin
if (RTF = nil) then Exit;
if Row = 0 then Row := 1;
if Col = 0 then Col := 1;// 到第 Row 列, Col 行共几个字元
iStopLine := Row - 1;
iSelStart := 0;
for i := 0 to RTF.Lines.Count - 1 do
begin
if i = iStopLine then
begin
if Length(RTF.Lines[i]) >= Col then
Inc(iSelStart, Col)
else
Inc(iSelStart, Length(RTF.Lines[i]) + 2);
Break;
end;
Inc(iSelStart, Length(RTF.Lines[i]) + 2);
end;
if iSelStart > 0 then Dec(iSelStart);// 以设定标记的方式指定游标位置
SendMessage(RTF.Handle, EM_SETSEL, iSelStart, iSelStart);// 再次侦测游标位置
Row := SendMessage(RTF.Handle, EM_LINEFROMCHAR, RTF.SelStart, 0);
Col := RTF.SelStart - SendMessage(RTF.Handle, EM_LINEINDEX, Row, 0);// 卷到游标所在位置
SendMessage(RTF.Handle, EM_SCROLLCARET, 0, 0);
end;procedure TForm1.Button1Click(Sender: TObject);
var
iRow, iCol: word;
begin
iRow := 17;
iCol := 3;
SetCaret(RichEdit1, iRow, iCol);
RichEdit1.SetFocus;
end
3:设置字体格式,如何设置你应该会吧,嘻嘻
while 未到文件末尾 do
if 文字='{' 标志= true
else if 文字= '}'标志= false
else if 标志=true 文字变色
else 正常显示文字
我用的是richedit控件,我的目的是当我键入左大括号,以后输入在大括号的字符都变成另外一种颜色,而当我输入右括号后,其后面的便恢复到以前状态