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

DBGRID

答題得分者是:cashxin2002
kkym
一般會員


發表:17
回覆:13
積分:6
註冊:2003-04-16

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-26 13:45:20 IP:218.18.xxx.xxx 未訂閱
請教大家 我有一個DBGRID,有兩個欄位,我想讓使用者不管在何處按下ENTER鍵時,就把該DBGRID隱藏,這個事件要怎麼寫?寫在哪一個事件裡? 謝謝大家
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-26 14:04:47 IP:202.62.xxx.xxx 未訂閱
您好﹗    不知您指的是在DBGrid上按下回車鍵呢﹖還是在Form的任何地方按下回車鍵﹖
一﹒若是在DBGrid上按下回車鍵﹐可將下列程式碼寫在DBGrid元件的OnKeyPress事件中﹕
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then
    begin
      Key := #0;
      DBGrid1.Visible := False;
    end;
end;     二﹒若是在Form中按回車鍵﹐可將下列程式碼寫在Form的OnKeyPress事件中﹐并將Form的KeyPreview屬性值設為True﹐目的是攔截在Form範圍內所有的OnKeyPress事件﹕
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then
    begin
      Key := #0;
      DBGrid1.Visible := False;
    end;
end;
================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
kkym
一般會員


發表:17
回覆:13
積分:6
註冊:2003-04-16

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-28 10:25:17 IP:219.133.xxx.xxx 未訂閱
您好,感謝您的指導、、不過好像還是不行,Form的KeyPreview屬性值有設為True,不知是否還有哪裡的屬性沒改到? 謝謝您。
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-28 10:39:50 IP:202.62.xxx.xxx 未訂閱
您好﹗    照您的回覆來看﹐需要達到的效果是在Form中的任何位置按下回車鍵﹐就触發該事件﹐在前篇回覆中的第二種方法應可達到此效果﹐是否可貼出您的程式碼部分﹖    ================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
kkym
一般會員


發表:17
回覆:13
積分:6
註冊:2003-04-16

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-28 10:45:07 IP:219.133.xxx.xxx 未訂閱
我是要在DBGRID3按ENTER鍵、、、其實FORM也需要,只是以前試不出來、、謝謝您了 procedure Tproc.DBGrid3KeyPress(Sender: TObject; var Key: Char); begin begin if Key = #13 then begin Key := #0; DBGrid1.Visible := False; end; end; end;
pillar62
資深會員


發表:9
回覆:324
積分:271
註冊:2002-04-15

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-03-28 10:45:10 IP:210.64.xxx.xxx 未訂閱
你好 我有用cashxin2002版主的程式測試過是可以的,是不是你查一下有沒有其他的事件會影響到form的keypres事件呢?? Pillar Wang
------
Pillar Wang
cashxin2002
版主


發表:231
回覆:2555
積分:1937
註冊:2003-03-28

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-03-28 11:00:51 IP:202.62.xxx.xxx 未訂閱
您好﹗    如果將此程式碼寫于Form的OnKeyPress事件中﹐并將Form的KeyPreview屬性值設為True時﹐就會在Form範圍內所有的按下回車鍵事件欄截﹐并触發此程式﹐如果您的需要除了在DBGird3中按下回車鍵触發和在Form上按下回車鍵触發﹐但不包括在其它元件上按下回車鍵触發(DBGrid1)﹐就不能把Form的KeyPreview屬性值設為True﹐應設為False﹐然后將以下程式碼分別寫在Form的OnKeyPress事件中和DBGrid3的OnKeyPress事件中﹕
begin
  if Key = #13 then
    begin
      Key := #0;
      DBGrid1.Visible := False;
    end;
end;
================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
kkym
一般會員


發表:17
回覆:13
積分:6
註冊:2003-04-16

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-03-28 13:18:30 IP:219.133.xxx.xxx 未訂閱
非常謝謝您
系統時間:2024-06-27 3:12:06
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!