2012-06-05 22 views
1

如果我嘗試是否取消在Delphi的TListView中的TListItem上工作?

ListView1.items[0].EditCaption; 

它按預期工作讓我編輯的第一個項目的標題,但是如果在編輯時我嘗試

ListView1.items[0].CancelEdit; 

它不會取消編輯。是否有一些我錯過的概念,是錯誤還是錯誤的幫助?

這似乎是在Delphi 2007和XE2(也可能是其他)中的一個問題。

回答

3

我認爲這是本地控制的問題,VCL的確如documented(調用ListView_EditLabel(Handle, -1);),但沒有任何效果。根據ListView_GetEditControldocumentation,發送列表視圖a WM_CANCELMODE也應該起作用,而不是。

這裏的測試顯示了以下作品,

winapi.windows.SetFocus(ListView1.Handle); 

有趣的是ListView1.SetFocus沒有。

相關問題