我有DBGrid和DBGrid外部的「刪除」按鈕。我如何確定,該用戶在DBGrid中選擇了一些字符串?因爲如果打開窗體並在DBGrid中沒有選擇任何字符串,並且用戶單擊了按鈕「刪除」 - 我需要向他顯示警告框「沒有選擇字符串!選擇要刪除的字符串。」如何知道用戶在DBGrid中選擇了一些行?
1
A
回答
1
你需要看看DBGrid1.SelectedRows
procedure TForm24.Button1Click(Sender: TObject);
var
BookmarkList: TBookmarkList;
Bookmark: TBookmark;
i: Integer;
begin
BookmarkList := DBGrid1.SelectedRows;
if BookmarkList.Count = 0 then
ShowMessage('No strings selected! Select the string you want to delete')
else
begin
for i := 0 to BookmarkList.Count - 1 do
begin
ClientDataSet1.GotoBookmark(BookmarkList[i]);
ClientDataSet1.Delete;
end;
end;
end;
7
你不說你的網格是否被設置爲使用dgRowSelect和/或dgMultiSelect與否。如果是,則通過SelectedRows屬性,當前選定行的列表可用作書籤列表。
如果沒有選中的記錄那麼這個列表將是空的,所以:
if myGrid.SelectedRows.Count = 0 then
// Nothing selected!
+1
只有在'dgMultiSelect'爲真時才能使用。然後用戶可以刪除多個記錄。 –
+0
是的,這個問題不明確,這就是爲什麼我特別指出「**如果**它是[*設置爲dgMultiSelect *]」? – Deltics
相關問題
- 1. 如何知道從DataTable中選擇了哪些行
- 2. 如何知道在TableViewer中選擇了哪一行?
- 3. Android:如何知道用戶是否在圖庫中選擇了一個圖像
- 4. 我如何知道用戶何時選擇了sap.m.中的所有行?表
- 5. 如何知道用戶是否從選擇器中選擇了意向動作
- 6. 如何知道在NSMatrix中選擇了多少行和列?
- 7. 如何知道在哪些版本中引入了某一行?
- 8. Xamarin - 如何知道用戶選擇了哪個文件
- 9. 如何知道通過HttpContext.Current.Request.Form在HTML頁面中選擇了哪些複選框?
- 10. 如何知道在jquery中選擇了哪個單選按鈕?
- 11. 如何知道在HTML表單中選擇了哪個選項?
- 12. 如何知道在Qt中選擇了哪個選項卡?
- 13. 選擇一些值知道列名
- 14. 有了多個選擇,我們如何才能知道用戶選擇了或未選擇某個值?
- 15. 如何知道用戶何時選擇一個段落?
- 16. iPhone如果允許通知,如何知道用戶選擇
- 17. 刷新DBGrid後選擇行
- 18. 如何知道你在JComboBox中選擇了什麼
- 19. 如何知道在JAVA中選擇了哪個列表
- 20. 如何知道在Intent.ACTION_SEND中選擇了哪個意圖?
- 21. 如何知道用戶更改了哪個選擇標記選項
- 22. 如何知道選擇了哪個mysqli_fetch_assoc行
- 23. 如何知道在一個類中定義了哪些變量
- 24. 知道選擇了哪個選項卡
- 25. 如何知道用戶是否在選擇框中選擇了相同的項目
- 26. 無法從一個頁面選擇到另一個 - 需要知道用戶選擇了什麼選擇
- 27. 如何知道哪個用戶付了?
- 28. 如何知道用戶在使用意向選擇器時選擇了哪個應用程序?
- 29. 如何檢測何時在jqgrid中選擇了一行並選擇了非行?
- 30. 如何知道使用QFileDialog時用戶選擇了哪個後綴?
'DBGrid1-> DataSource-> DataSet->的IsEmpty()'。這個字符串總是顯示FALSE。即使在DBGRID中選擇了一些字符串。 –
@Jens - 我認爲你可能會將「選定記錄」的概念與**當前**記錄混淆。除非數據集爲空,否則總是有當前記錄,但取決於網格的設置,可能會有o,1或多個記錄**選中**。 – Deltics
你是對的我已經更新了我的回答 –