前段时间用delphi写个阿里云的短信发送应用,遇到Tstringlist大小写不敏感问题,CaseSensitive设置true或false,都是大小写不敏感。
看看帮助,tstringlist.sort 是个虚函数,那就只能重写一下了。
解决办法:
从TStringList派生一个类覆盖CompareStrings方法。
type
TSignList = class(TStringList)
protected
function CompareStrings(const S1, S2: string): Integer; override;
end;
{ TSignList }
function TSignList.CompareStrings(const S1, S2: string): Integer;
begin
if CaseSensitive then
Result := CompareStr(S1, S2)
else
Result := CompareText(S1, S2);
end;