2009-12-29 54 views
2

我正在開發Lazarus上的電子書管理器,但我遇到了一些我從未使用過的組件的問題(TListBox)。在TListBox命名爲CategoryList,我有以下項目:將TListBox的選定行的內容存儲在變量上

文學和小說
浪漫
計算機與互聯網

專業技術
科幻和幻想
傳記和回憶錄
業務and Finance
兒童書籍
中文tertainment
歷史
科學
自助
教科書和教材
旅遊
西部片

當用戶選擇的CategoryList一個項目,我想將其存儲在一個變量,但我怎樣才能做到這一點?

回答

9

如果你想索引:

index := CategoryList.ItemIndex; 

如果你希望字符串:

str := CategoryList.Items[CategoryList.ItemIndex]; 

捕獲用戶選擇的東西的時候,你需要註冊一個OnChange事件:

CategoryList.OnChange := CategoryListChange; 

其中CategoryListChange是一個事件偵聽器:

procedure TMyForm.CategoryListChange(Sender: TObject); 
begin 
    // do something with CategoryList.Items[CategoryList.ItemIndex] 
end; 

您可能還想看看this webpage的一些帖子!

+5

+1在使用它作爲Items屬性的索引之前,測試'if(CategoryList.ItemIndex> -1)'。 – ThinkJet 2009-12-29 12:55:23

+0

非常感謝您的幫助和鏈接,這對學習非常有用。我打算讓TListBox的一些練習變得更好。 – 2009-12-29 14:48:52

相關問題