線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1835
推到 Plurk!
推到 Facebook!

如何取消DBGrid的Insert鍵功能

答題得分者是:Mickey
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-02-25 11:09:21 IP:61.218.xxx.xxx 未訂閱
各位前輩請教一下: 在DBGrid中如使用者按Insert鍵DBGRID會自動插入一筆新記錄 要如何取消這功能或改為插入到最後一列?? 謝謝各位前輩 非常非常的謝謝你,因為有你這世界變的更美好 ☆ ^_^ ☆ °∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒ ﹒‧°∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒﹒‧°∴°﹒☆°.
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-02-25 11:17:18 IP:61.222.xxx.xxx 未訂閱
試試看 DBGrid1.Options := DBGrid1.Options - [dgEditing];
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-02-25 11:31:38 IP:61.218.xxx.xxx 未訂閱
引言: 試試看 DBGrid1.Options := DBGrid1.Options - [dgEditing];
l630521 兄謝謝你 但我要的是可以新增修改資料,且新增改為插入到最後一列??
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-02-25 11:45:48 IP:61.220.xxx.xxx 未訂閱
用append; 天行健 君子當自強不息~~@.@
------
天行健
君子當自強不息~~@.@
l630521
資深會員


發表:15
回覆:349
積分:372
註冊:2003-02-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-02-25 11:58:18 IP:61.222.xxx.xxx 未訂閱
用DBGrid1.DataSource.DataSet.Append;
Mickey
版主


發表:77
回覆:1882
積分:1390
註冊:2002-12-11

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-02-25 12:23:05 IP:61.219.xxx.xxx 未訂閱
引言: 各位前輩請教一下: 在DBGrid中如使用者按Insert鍵DBGRID會自動插入一筆新記錄 要如何取消這功能或改為插入到最後一列?? 謝謝各位前輩 非常非常的謝謝你,因為有你這世界變的更美好 ☆ ^_^ ☆ °∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒ ﹒‧°∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒﹒‧°∴°﹒☆°.
DataSet OnNewRecord Event :
procedure TForm1.ADOQuery1NewRecord(DataSet: TDataSet);
var T : TDataSetNotifyEvent;
begin
    T := DataSet.OnNewRecord;
    DataSet.OnNewRecord := nil;
    try
      DataSet.Cancel;
      DataSet.Append;
    finally
      DataSet.OnNewRecord := T;
    end;
end;
/* Free 和 Create 一樣重要 */ 發表人 - Mickey 於 2003/02/25 12:27:02
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-02-25 12:54:41 IP:61.218.xxx.xxx 未訂閱
引言:
引言: 各位前輩請教一下: 在DBGrid中如使用者按Insert鍵DBGRID會自動插入一筆新記錄 要如何取消這功能或改為插入到最後一列?? 謝謝各位前輩 非常非常的謝謝你,因為有你這世界變的更美好 ☆ ^_^ ☆ °∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒ ﹒‧°∴°﹒☆°.﹒‧°∴°﹒°.﹒‧°∴°﹒﹒‧°∴°﹒☆°.
DataSet OnNewRecord Event :
procedure TForm1.ADOQuery1NewRecord(DataSet: TDataSet);
var T : TDataSetNotifyEvent;
begin
    T := DataSet.OnNewRecord;
    DataSet.OnNewRecord := nil;
    try
      DataSet.Cancel;
      DataSet.Append;
    finally
      DataSet.OnNewRecord := T;
    end;
end;
/* Free 和 Create 一樣重要 */ 發表人 - Mickey 於 2003/02/25 12:27:02
謝謝Mickey前輩,可以了 這樣也可以 procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin if Key=45 then Begin Key:=0 ; self.ADODataSet1.Append; end; end;
系統時間:2024-06-28 17:36:27
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!