<输入举例>
procedure TForm1.Button1Click(Sender: TObject);
begin
{$I+}
Caption := '{ [email protected] }'; //我邮箱
{ 情况还不少 }
(* 情况还不少 *)
//{ //我喜欢用这种方法屏蔽代码
Color := clRed;
Font.Color := clBlue;
//}
end;<输出举例>
procedure TForm1.Button1Click(Sender: TObject);
begin
{$I+}
Caption := '{ [email protected] }';
Color := clRed;
Font.Color := clBlue;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
{$I+}
Caption := '{ [email protected] }'; //我邮箱
{ 情况还不少 }
(* 情况还不少 *)
//{ //我喜欢用这种方法屏蔽代码
Color := clRed;
Font.Color := clBlue;
//}
end;<输出举例>
procedure TForm1.Button1Click(Sender: TObject);
begin
{$I+}
Caption := '{ [email protected] }';
Color := clRed;
Font.Color := clBlue;
end;
解决方案 »
- 一个简单的小程序,有没有办法提高优先级,cpu 利用率一直是 40%左右。不是线程程序。
- 关于listbox用法,高手进,在线等.....
- 请问怎样取DBGRID和dbgrideh某行某列的内容??
- 我就是平生不见李维,便是英雄也枉然!我还和David i合影!
- udpsocket,在线等!
- 一个midchild窗体,如果使这个窗体变成平铺的效果,如果不是midchild窗体时,只要设置他的BorderStyle为bsnone就可以,但是midchild呢?
- 如何在界面里加HTML?
- ClientDataSet的delta问题?
- 有关delphi开发数据库com的简单问题,送分!!!
- 为什么我用adodataset1.Append;添加数据,如果在有D的电脑上就没事,但到别的电脑上就说找不到ADO对象??
- 窗口图像覆盖后的重写为题?
- pascal中关于类型间的关系,如何记忆?
总用别人的方法不好哟!很难提高
这个问题,自己先想想看吧!
我是考考大家,我已经写过测试过
但如果能跟delphi的IDE连接可能可以吧
这是算法问题,和工具没有关系
也可以是除掉C、SQL、BASIC注释呀!
(zswang递给cobi一颗珠珠糖)
“快去做功课,不要学警察叔叔,问这问哪的”
TModalStr = record
rBegin: string;
rEnd: string;
rAppend: string;
rSingle: Byte;
end;const
cPascalCount = 5;
cPascalList: array[0 .. Pred(cPascalCount)] of TModalStr =
(
(rBegin: ''''; rEnd: ''''; rAppend: ''; rSingle: 1),
(rBegin: '{$'; rEnd: '}'; rAppend: ''; rSingle: 2),
(rBegin: '{'; rEnd: '}'; rAppend: ''; rSingle: 3),
(rBegin: '(*'; rEnd: '*)'; rAppend: ''; rSingle: 4),
(rBegin: '//'; rEnd: #13#10; rAppend: #13#10; rSingle: 5)
);const
cSQLCount = 4;
cSQLList: array[0 .. Pred(cSQLCount)] of TModalStr =
(
(rBegin: ''''; rEnd: ''''; rAppend: ''; rSingle: 1),
(rBegin: '"'; rEnd: '"'; rAppend: ''; rSingle: 2),
(rBegin: '/*'; rEnd: '*/'; rAppend: ''; rSingle: 3),
(rBegin: '--'; rEnd: #13#10; rAppend: #13#10; rSingle: 4)
);function GetModalStr(mStr: string; mModalStrList: array of TModalStr;
mSingles: TIntegerSet): string;
var
vSingle: Integer;
I, J: Integer;
T, K: Integer;
vEnd: string;
vAppend: string;
begin
Result := '';
vSingle := 0;
T := 0;
K := 0;
for I := 1 to Length(mStr) do begin
if T > 1 then begin
Dec(T);
Continue;
end;
if vSingle = 0 then begin
vEnd := '';
for J := Low(mModalStrList) to High(mModalStrList) do begin
K := Length(mModalStrList[J].rBegin);
if Copy(mStr, I, K) = mModalStrList[J].rBegin then begin
vEnd := mModalStrList[J].rEnd;
vAppend := mModalStrList[J].rAppend;
vSingle := mModalStrList[J].rSingle;
if vSingle in mSingles then
Result := Result + mModalStrList[J].rBegin;
T := K;
K := Length(vEnd);
Break;
end;
end;
if (vEnd = '') and (vSingle in mSingles) then
Result := Result + mStr[I];
end else if Copy(mStr, I, K) = vEnd then begin
if vSingle in mSingles then
Result := Result + vEnd
else Result := Result + vAppend;
vSingle := 0;
T := K;
end else if vSingle in mSingles then
Result := Result + mStr[I];
end;
end; { GetModalStr }procedure TForm1.Button1Click(Sender: TObject);
begin
Memo2.Text := GetModalStr(Memo1.Text, cPascalList, [0..cPascalCount] - [3, 4, 5]);
end;procedure TForm1.Button2Click(Sender: TObject);
begin
Memo2.Text := GetModalStr(Memo1.Text, cSQLList, [0..cSQLCount] - [3, 4]);
end;
我终于看懂了你的代码,累得我直喘,我真是笨哪
不过真不错,谢谢你的代码,看来偶得好好学习阿
acgzdbbaczg
谷谷谷强谷谷