Hallo,
in meinem Programm nutze ich ein ListView im Reportformat zum anzeigen mehrer Einträge. Wenn man auf die erste Spalte klickt kann man einen Suchtext eingeben und der gefunde Eintrag/ListItem wird direkt markiert als wenn man den Eintr ag angeklickt hätte (blau hinterlegt) wenn ich aber den Suchstring beim Start der Anwendung als Parameter mitgebe um direkt den entsprechenden Eintrag beim Start der Anwendung zu markieren kommt eine Exception der Klasse "EAccessViolation" im folgenden der verwende Code zum Suchen und markieren des Eintrages, wer hat einen Tipp?
<PRE>
procedure TForm1.lv_suche(ListView:TListView;Column:TListCol umn;autostring:string);
var ListItem:TListItem;
suchstring:string;
begin
if autostring <> '' then
suchstring:=autostring
else if Column.Index = 0 then
InputQuery('Suche','Bitte geben Sie den Suchtext für '+Column.Caption+' ein!',suchstring);
if suchstring <> '' then begin
ListItem:=ListView.FindCaption(0,suchstring,true,t rue,true);
if ListItem <> nil then begin
ListView.SetFocus;
ListView.ItemFocused:=ListItem;
ListItem.Selected:=true;
ListItem.Focused:=true;
end;
end;
end;
</PRE>
Grüße Hendrik
in meinem Programm nutze ich ein ListView im Reportformat zum anzeigen mehrer Einträge. Wenn man auf die erste Spalte klickt kann man einen Suchtext eingeben und der gefunde Eintrag/ListItem wird direkt markiert als wenn man den Eintr ag angeklickt hätte (blau hinterlegt) wenn ich aber den Suchstring beim Start der Anwendung als Parameter mitgebe um direkt den entsprechenden Eintrag beim Start der Anwendung zu markieren kommt eine Exception der Klasse "EAccessViolation" im folgenden der verwende Code zum Suchen und markieren des Eintrages, wer hat einen Tipp?
<PRE>
procedure TForm1.lv_suche(ListView:TListView;Column:TListCol umn;autostring:string);
var ListItem:TListItem;
suchstring:string;
begin
if autostring <> '' then
suchstring:=autostring
else if Column.Index = 0 then
InputQuery('Suche','Bitte geben Sie den Suchtext für '+Column.Caption+' ein!',suchstring);
if suchstring <> '' then begin
ListItem:=ListView.FindCaption(0,suchstring,true,t rue,true);
if ListItem <> nil then begin
ListView.SetFocus;
ListView.ItemFocused:=ListItem;
ListItem.Selected:=true;
ListItem.Focused:=true;
end;
end;
end;
</PRE>
Grüße Hendrik
Comment