Q&A

  • 답변이 없어서 다시 질문 드립니다 도와주세요 .ListView관련질문
ListView에 내용이 있습니다


푸우  남자   서울
푸우1 남자   경기  // 마우스로 클릭해서 selected 합니다
푸우2 남자   경기

서버에서 데이타를 3초마다 가져옵니다. 그래서 데이타가 늘어날때 또 있고

데이타가 줄어들때로 있습니다

푸우  남자   서울
푸우  남자   전남
푸우  남자   대구
푸우  남자   서울
푸우1 남자   경기  // 이부분을 계속 focus를 유지하고 싶습니다
푸우1 남자   전남
푸우1 남자   제주

위에처럼 데이타가 업데이트 되고 나서도 처음  셀렉트한곳에 위치하게 하고
싶습니다

이렇게 했는데 잘 안되네요

고수님들 도와주세요.. 부탁드립니다.


procedure Form1.UserListViewClick(Sender: TObject);

begin
if UserListView.Selected = nil then exit;

file_index := UserListView.Selected.Index;
end;


procedure Form1.UserListUpdate(Sender: TObject);

   UserListView.Items.BeginUpdate;
   UserListView.Items.Clear;

  
       ListItem := UserListView.Items.Add;
       ListItem.Caption := Trim(PacketDetail.Strings[3]);
       ListItem.SubItems.Add(SexCast(Trim(PacketDetail.Strings[7])));
       ListItem.SubItems.Add(AgeCast(Trim(PacketDetail.Strings[8])));
       ListItem.SubItems.Add(CityCast(Trim(PacketDetail.Strings[9])));
       ListItem.SubItems.Add(MeetCast(Trim(PacketDetail.Strings[10])));
       ListItem.SubItems.Add(TolkCast(Trim(PacketDetail.Strings[11])));
       ListItem.SubItems.Add(Trim(PacketDetail.Strings[0]));
       ListItem.SubItems.Add(Trim(PacketDetail.Strings[1]));
       ListItem.SubItems.Add(Trim(PacketDetail.Strings[2]));

   if not file_index = 0 then
   begin
   UserListView.items[file_index].Selected := true;
   UserListView.SetFocus;
   end

end
  

   UserCount.Caption := inttostr(UserListView.Items.Count);
   UserListView.Items.EndUpdate;
  
1  COMMENTS