StringCase
Witam serdecznie czy czasami potrzebowaliście użyć funkcji case do stringów? No właśnie ja ostatnio miałem do wyboru napisać kilkanaście if'ów lub napisać funkcję case dla stringów. Udało się poniżej gotowy kod:
Sposób użycia:
function StringCase(wybor : string; lista: TStringList): Integer;
var i: integer;
begin
Result:=-1;
for i:=0 to Length(lista)-1 do
begin
if Comparetext">CompareText (wybor, lista[i]) = 0 then
begin
Result:=i;
Break;
end;
end;
end;
var i: integer;
begin
Result:=-1;
for i:=0 to Length(lista)-1 do
begin
if Comparetext">CompareText (wybor, lista[i]) = 0 then
begin
Result:=i;
Break;
end;
end;
end;
Sposób użycia:
procedure TForm1.BitBtn1Click(Sender: TObject);
var
sList: TStringList;
begin
sList := TStringList.Create;
sList.LoadFromFile('nazwa_pliku');
case StringCase(edtNazwa.text,sList) of
0:ShowMessage('Cos tam 1') ;
1:ShowMessage('Cos tam 2') ;
2:ShowMessage('Cos tam 3') ;
end;
sList.Free;
end;
var
sList: TStringList;
begin
sList := TStringList.Create;
sList.LoadFromFile('nazwa_pliku');
case StringCase(edtNazwa.text,sList) of
0:ShowMessage('Cos tam 1') ;
1:ShowMessage('Cos tam 2') ;
2:ShowMessage('Cos tam 3') ;
end;
sList.Free;
end;
woolfik dnia 24-02-2010 16:21
Tam ma byc if CompareText(wybor, lista[i]) = 0 then niestety cos sie posypalo na CompareText


