要在TListView
向前移動,你可以使用GetNextItem
。
ListView1.Selected := ListView1.GetNextItem(ListView1.Selected, sdAll, []);
在上面的'sdAll'指定下一個項目將是其索引高於已選項目的項目。此方法在沒有選定項目時選擇第一個項目。當最後一個項目已被選中時,在呼叫返回後它將被取消選擇。
要走向相反的方向,如果合適,您可以傳遞'sdLeft'或'sdAbove'而不是'sdAll'。如果沒有,因爲沒有'GetPreviousItem',你必須編寫代碼來選擇其索引低於已選項目的項目。例如:
if not Assigned(ListView1.Selected) then
ListView1.Selected := ListView1.Items[ListView1.GetCount - 1]
else if ListView1.Selected.Index = 0 then
ListView1.Selected := nil
else
ListView1.Selected := ListView1.Items[ListView1.Selected.Index - 1];
當選擇了最後一個項目,你按你向前無所求發生你可能有,如果你想不同的行爲,修改代碼,例如。
這是一個標準的TListView或其他東西?另外,包括這是VCL還是Firemonkey(它有所不同)。請[編輯]您的帖子以闡明這些詳細信息,幷包含填充示例列表視圖的代碼。 –
你是否在向前和向後計數掙扎。你有什麼具體問題。 –
你不要跑一個循環倒計時,一個倒計時。你知道關於循環。 –