請問DBGird的Focus問題 |
尚未結案
|
帥氣銀行
一般會員 發表:13 回覆:40 積分:15 註冊:2005-05-31 發送簡訊給我 |
大家好 我想請問一下有關DBGrid的Focus問題
DBGrid的RowSelect設為true
如何知道目前DBGrid的Focus是在哪一個Row上?
找了一些資料都是在RowSelect為false時才可用
如SelectedIndex或是SelectedRows
因為我要做到在選取到某一個Row時按下Delete鍵時
可以將此Row整個刪除
我是用TQuery連到DGgrid
還是要在切換Row時讀取該Row的資訊
再到TQuery內去做刪除的動作?
--
第一次在這發問
如有不懂規矩的地方還請大家多多指教
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
以下是截自 Delphi 的 help, 您可以參考一下
(重點是 SelectedRows 這個屬性)
procedure TForm1.Button1Click(Sender: TObject); var i, j: Integer; s: string; begin if DBGrid1.SelectedRows.Count>0 then with DBGrid1.DataSource.DataSet do for i:=0 to DBGrid1.SelectedRows.Count-1 do begin GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i])); for j := 0 to FieldCount-1 do begin if (j>0) then s:=s ', '; s:=s Fields[j].AsString; end; Listbox1.Items.Add(s); s:= ''; end; end;-- hagar. |
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
插個花!
我的作法是使用一個 >如下範例!
< class="code">
if ( DBGrid.SelectedRows.Count > 0 ) then
if ( MessageBox(GetActiveWindow(),'確定刪除嗎?','刪除',MB_YESNO or MB_ICONINFORMATION or MB_DEFBUTTON1 ) = IDYES ) then
DBGrid.SelectedRows.Delete;
-----------------------------------------------
Creation is the fundation of promotion. 發表人 - stallion 於 2005/06/19 20:21:53
|
帥氣銀行
一般會員 發表:13 回覆:40 積分:15 註冊:2005-05-31 發送簡訊給我 |
首先感謝hagar跟Stallion兩位長官的解答
hagar長官提供的我之前已經測試過了
但要使用SelectedRows這個屬性
必須先把DBGrid Option內的dgRowSelect跟dgMulitSelect設為true才行
若有一個不為true則selectdRows一定會是0 後來我找到另一個解決的方法
就是直接下DBgrid.DataSource.DataSet.Delete這個指令
這樣的話就會自動將目前Active的Row整個刪除
而且這個不管dgRowSelect跟dgMulitSelect是不是true都可以用
但我不知道這樣是否會造成其他問題
還請各位長官指教
|
hagar
版主 發表:143 回覆:4056 積分:4445 註冊:2002-04-14 發送簡訊給我 |
如果您要的功能不複選 record 然後刪除所複選的 record
只是要 Focus(或 Cursor)在哪一筆 record 就刪哪一筆
那您的 DBgrid1.DataSource.DataSet.Delete 這行即可
或者您了解 TDBGrid / TDataSource / TDataset 觀念的話
比方說 DBGrid1 顯示的是 Query1 的 record 的話
那就用 Query1.Delete; 即可
Query1.Delete; 在這個例子就等同於 DBgrid1.DataSource.DataSet.Delete; 了 --
hagar.
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |