程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Firemonkey ListView 點擊事件,firemonkeylistview

Firemonkey ListView 點擊事件,firemonkeylistview

編輯:Delphi

Firemonkey ListView 點擊事件,firemonkeylistview


Firemonkey ListView 的點擊事件一直讓人摸不著頭緒(各平台觸發規則不太相同),因為它提供了點擊相關的事件就有如下:

  • OnChange:改變項目觸發。
  • OnClick:點擊觸發。
  • OnItemClick:點擊項目觸發
    • Windows 平台:按下立即觸發,放開後接著觸發 OnItemClickEx。
    • Android 平台:按下立即觸發,不用放開接著 OnItemClickEx(按鈕 Button 觸發順序與 Widnows 相同,要放開才會觸發 OnItemClickEx)。
  • 下列以這二個事件為例:
    • OnItemClickEx:項目內單項觸發。
    • OnButtonClick:按鈕事件。

下例將 Item.Apperance 設定為 Custom。

 

可獲取每一個單項的事件觸發:

 

參考代碼:

procedure TForm1.ListView1ItemClickEx(const Sender: TObject; ItemIndex: Integer;
  const [Ref] LocalClickPos: TPointF; const ItemObject: TListItemDrawable);
begin
     if ItemObject is TListItemText       then Label1.Text := 'OnItemClickEx_Text_'      + ItemIndex.ToString else
     if ItemObject is TListItemImage      then Label1.Text := 'OnItemClickEx_Image_'     + ItemIndex.ToString else
     if ItemObject is TListItemAccessory  then Label1.Text := 'OnItemClickEx_Accessory_' + ItemIndex.ToString;
end;

procedure TForm1.ListView1ButtonClick(const Sender: TObject;
  const AItem: TListItem; const AObject: TListItemSimpleControl);
begin
     if AObject is TListItemGlyphButton then Label1.Text := 'OnButtonClick_GlyphButton_' + AItem.Index.ToString else
     if AObject is TListItemTextButton  then Label1.Text := 'OnButtonClick_TextButton_'  + AItem.Index.ToString;
end;

 

有一些問題存在:

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved