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

Format('%d %d %d %0:d %3:d', [1, 2, 3, 4])是什麼意思?

答題得分者是:timhuang
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-03-17 10:13:07 IP:203.69.xxx.xxx 未訂閱
Format('%d %d %d %0:d %3:d', [1, 2, 3, 4])是什麼意思? form如何使用
william
版主


發表:66
回覆:2535
積分:3048
註冊:2002-07-11

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-03-17 10:24:46 IP:147.8.xxx.xxx 未訂閱
Please refer to the Delphi help on 'Format strings'.
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-03-17 10:24:49 IP:211.76.xxx.xxx 未訂閱
function Format(const Format: string; const Args: array of const ): string; 其中 Format 指的是格式, 後面的陣列傳入的就是 值. 例如: Label1.Caption := Format('There are now %d records in the table', [DataSet.RecordCount]); 代表著要顯示的資料為 DataSet.RecordCount, 用%d的方式顯示. %d 代表用 十進位數 (Decimal) 來顯示. 所以若是 DataSet.RecordCount 的值為 10 的話, 則 Label1.Caption 會顯示為 There are now 10 records in the table 詳細的資料可以參考 delphi 的 online help Format 函數!! 另外 %0:d 及 %3:d 代表著是後面的陣列 index. 所以 %0:d 是取陣列中的第 1 個變數 (index 為 0) 也就是 1, %3:d 是取陣列中的第 4 個變數 (index 為 3) 也就是 4, 因此 Format('%d %d %d %0:d %3:d', [1, 2, 3, 4]) 的結果就是 1 2 3 1 4 了. 發表人 - timhuang 於 2003/03/17 10:35:42
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-03-17 10:55:38 IP:203.69.xxx.xxx 未訂閱
引言: function Format(const Format: string; const Args: array of const ): string; 其中 Format 指的是格式, 後面的陣列傳入的就是 值. 例如: Label1.Caption := Format('There are now %d records in the table', [DataSet.RecordCount]); 代表著要顯示的資料為 DataSet.RecordCount, 用%d的方式顯示. %d 代表用 十進位數 (Decimal) 來顯示. 所以若是 DataSet.RecordCount 的值為 10 的話, 則 Label1.Caption 會顯示為 There are now 10 records in the table 詳細的資料可以參考 delphi 的 online help Format 函數!! 另外 %0:d 及 %3:d 代表著是後面的陣列 index. 所以 %0:d 是取陣列中的第 1 個變數 (index 為 0) 也就是 1, %3:d 是取陣列中的第 4 個變數 (index 為 3) 也就是 4, 因此 Format('%d %d %d %0:d %3:d', [1, 2, 3, 4]) 的結果就是 1 2 3 1 4 了. 發表人 - timhuang 於 2003/03/17 10:35:42
那以下是什麼意思 Format('%-6s%-3s%-12s(%1s)', [ EMP.Field'EMPLYID').AsString,' : ',EMP.FieldByName('EMPLYNM').AsString, EMP.FieldByName('IOCTRL').AsString ])
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-03-17 11:47:00 IP:211.76.xxx.xxx 未訂閱
引言: Format('%-6s%-3s%-12s(%1s)', [ EMP.Field'EMPLYID').AsString,' : ',EMP.FieldByName('EMPLYNM').AsString, EMP.FieldByName('IOCTRL').AsString ])
%-6s - 代表靠左對齊. 6 代表寬度為 6, 若是字串少於 6的則會補空白 s 代表字串 所以以上的結果就明白了!! 其中的非format string如 (, ) 就是直接顯示出來!!
vivi666666
初階會員


發表:83
回覆:94
積分:35
註冊:2003-03-05

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-03-17 12:01:36 IP:203.69.xxx.xxx 未訂閱
引言:
引言: Format('%-6s%-3s%-12s(%1s)', [ EMP.Field'EMPLYID').AsString,' : ',EMP.FieldByName('EMPLYNM').AsString, EMP.FieldByName('IOCTRL').AsString ])
%-6s - 代表靠左對齊. 6 代表寬度為 6, 若是字串少於 6的則會補空白 s 代表字串 所以以上的結果就明白了!! 其中的非format string如 (, ) 就是直接顯示出來!!
寬度為 6是指可放6個字串嗎? 若是 [ EMP.Field'EMPLYID').AsString 結果大於寬度6即12345678 會shown多少?
timhuang
尊榮會員


發表:78
回覆:1815
積分:1608
註冊:2002-07-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2003-03-17 12:59:43 IP:211.76.xxx.xxx 未訂閱
引言: 寬度為 6是指可放6個字串嗎? 若是 [ EMP.Field'EMPLYID').AsString 結果大於寬度6即12345678 會shown多少?
超過的部分還是會整個秀出來, 所以寬度為 6 僅對小於 6的補上 空白, 超過的部分就不會處理了... 你可以自己試試看就明白了!
系統時間:2024-05-20 18:51:56
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!