全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1408
推到 Plurk!
推到 Facebook!

DBGrid裡有個欄位必須輸入整數

尚未結案
venus
一般會員


發表:7
回覆:6
積分:2
註冊:2005-04-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-11-07 13:48:18 IP:202.154.xxx.xxx 未訂閱
大家好: 在DBGrid裡有一個欄位是叫"箱數"我想要讓user輸入時為整數型態 不要讓他輸入有小數點,在哪可以設定或程式端應加什麼判斷    請各位幫幫忙delphi的菜鳥喔~感恩內!!
l630521
資深會員


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

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-11-07 16:25:08 IP:203.73.xxx.xxx 未訂閱
妳的欄位型態如果是整數,Delphi會用TIntegerField來做該欄位,不會讓妳有機會輸入小數點啊! Ian
venus
一般會員


發表:7
回覆:6
積分:2
註冊:2005-04-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-11-07 16:45:20 IP:202.154.xxx.xxx 未訂閱
問題是~該欄位的型態是DECIMAL(10,2) 這才讓我粉煩惱…要如果解決呢,謝謝!!
l630521
資深會員


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

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-11-07 17:02:58 IP:211.74.xxx.xxx 未訂閱
如果我遇到這種情形的話,我會在該欄位的OnValidate上寫下面的判斷碼
try
  StrToInt(Sender.AsString);
except
  on E: Exception do
    raise Exception.Create('請輸入整數');
end;
不知其他前輩還有沒有更好的方法? Ian
cashxin2002
版主


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

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-11-07 18:10:01 IP:202.62.xxx.xxx 未訂閱
您好﹗    在DBGrid元件的OnKeyPress事件中攔截除數字以外按鍵的輸入﹕
begin
  //比如"箱數"欄位位于資料欄位的第三順位﹐即SelectedIndex屬性值為2
  if DBGrid1.SelectedIndex = 2 then
    begin
      if Not (Key In ['0'..'9', #8]) then
      //#8指的是后退鍵
        Key := #0;
    end;
end;
================================= 有空來瞅瞅我﹗因為我是您的朋友﹐有您真好﹗ ================================
------
忻晟
venus
一般會員


發表:7
回覆:6
積分:2
註冊:2005-04-18

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-11-08 09:30:01 IP:202.154.xxx.xxx 未訂閱
謝謝l630521&cashxin2002的解答 不過我不會使用l630521所寫的,呵^^我太笨了 cashxin2002的寫法我試成功了,感恩航^o^
系統時間:2024-05-06 21:40:02
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!