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

我應如何顯示TADOQuery的6個位的小數

尚未結案
szhc
一般會員


發表:4
回覆:10
積分:2
註冊:2005-11-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-11-18 17:36:18 IP:218.18.xxx.xxx 未訂閱
用TADOQuery連到SQL SERVER ,再用TDBGrid SHOW DATA ,但是發現只能SHOW出4位小數(原數據應有6位小數),我直接查看TADOQuery,并轉成AsString,還是只有4個位。我應如何顯示6個位的小數?
kgt
高階會員


發表:17
回覆:308
積分:165
註冊:2002-03-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-11-18 18:01:53 IP:61.219.xxx.xxx 未訂閱
ADOQuery右鍵的field editor...中,add all field..,看一下該field的屬性中之欄位長度為何? 在dbgrid右鍵比照上列作法,看一下有無問題?
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-11-18 18:09:35 IP:203.69.xxx.xxx 未訂閱
循例, 先找一下 KTop (KEY: ADO 小數位數) http://delphi.ktop.com.tw/topic.php?topic_id=73568
tonytop
中階會員


發表:6
回覆:114
積分:89
註冊:2003-12-04

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-11-19 21:27:20 IP:203.204.xxx.xxx 未訂閱
使用ADOQuery右鍵的field editor...中,add all field之後,選要show六位數的欄位,檢查Precision欄位值是否太小,將值加大一點看看,另外也可在GetText的事件中加入指令如下,但您說AsString也沒用,應該是Precision的問題。
procedure TForm1.ADOQuery1a1GetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
  Text:=Format('.6f',[StrToFloat(Sender.AsString)]);
end; 
<[忙盲茫]> ☆俺要升級啊☆
szhc
一般會員


發表:4
回覆:10
積分:2
註冊:2005-11-07

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-11-21 17:19:17 IP:218.18.xxx.xxx 未訂閱
tonytop / kgt : 我按你們的方法試了一下。 但還是不行。下面是我設定的程式。        object ADOQuery1a: TBCDField       AutoGenerateValue = arAutoInc       FieldName = 'a'       DisplayFormat = '#,##0.000000'       Precision = 24       Size = 18     end    a=0.123456789(原來) 但秀出來的是:"0.123500"    malanlk :    http://www.marcocantu.com/code/md6htm/DbxMulti.htm#DbxMultiForm.pas 中的“TFMTBCDField”是什麼來的,看不懂啊~    
malanlk
尊榮會員


發表:20
回覆:694
積分:577
註冊:2004-04-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-11-21 19:11:05 IP:203.69.xxx.xxx 未訂閱
Delphi 7 Help 查一下吧, 運動一下腦細胞...
kgt
高階會員


發表:17
回覆:308
積分:165
註冊:2002-03-13

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-11-21 20:42:16 IP:61.219.xxx.xxx 未訂閱
DisplayFormat = '#,##0.######'
szhc
一般會員


發表:4
回覆:10
積分:2
註冊:2005-11-07

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-11-22 09:05:21 IP:218.18.xxx.xxx 未訂閱
“#,##0.######”當然試過,只能顯示"0.1235" 我用的是BCB6!
RedSnow
版主


發表:79
回覆:1322
積分:845
註冊:2003-12-15

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-11-23 01:58:38 IP:61.230.xxx.xxx 未訂閱
szhc 您好:    將 ADOTable 元件的 EnableBCD 屬性設為 false 應該可解決這個問題,請參考下列討論: 怎樣處理浮點數 http://delphi.ktop.com.tw/topic.php?topic_id=36578 資料庫 float 格式存取問題 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=81211 7 天天敲鍵盤 v 時時按滑鼠 8
szhc
一般會員


發表:4
回覆:10
積分:2
註冊:2005-11-07

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-11-25 08:55:14 IP:218.17.xxx.xxx 未訂閱
我用的是BCB6,謝謝各位大大的幫助,現在可以了。 將ADOQuery1的EnableBCD =false。 謝謝
系統時間:2024-06-20 19:50:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!