請問FastReport報表Memo 內容如何強制換行? |
答題得分者是:chris681016
|
supertony
一般會員 發表:8 回覆:9 積分:3 註冊:2006-07-11 發送簡訊給我 |
各位網友大家好:
請問在FastReport,要如何將 Memo內容字串強制換行呢?我的測試程式如下: 測試換行功能:[TEST] ------------------------------------------------------------------- begin TEST:='第一筆明細' #13#10 '第二筆明細'; end FastReport執行後顯示的資料是 --> 測試換行功能:第一筆明細 '第二筆明細' 這些內容不見了... 我嘗試將換行符號改為 --> #13 , #10 都只會顯示 --> 測試換行功能:第一筆明細 請問應該怎麼寫,才能達到我想得到的結果呢? -------------------------------------------------------------------- 測試換行功能:第一筆明細 第二筆明細 --------------------------------------------------------------------- 是不是我使用的換行代碼錯誤?請各位網友不吝指教,謝謝! ~>_<~ |
chris681016
中階會員 發表:69 回覆:122 積分:98 註冊:2006-10-12 發送簡訊給我 |
|
supertony
一般會員 發表:8 回覆:9 積分:3 註冊:2006-07-11 發送簡訊給我 |
===================引 用 chris681016 文 章=================== 可以換行丫 procedure PageHeader1OnBeforePrint(Sender: TfrxComponent); begin Memo1.TEXT:='AAA' #13 #10 'BBB'; end; ***************************************************************** 感謝chris681016撥冗回覆,我的執行環境是Delphi 7 & FastReport 2.5,請問你上述的程式碼是寫在哪裡呢? 是寫在FastReport --> PageHeader Band --> OnBeforePrint 嗎? 我拉了一個 Insert rectangle object 放入PageHeader Band,物件名稱是Memo1, 我在 PageHeader Band --> "OnBeforePrint" 中寫入程式碼:Memo1.TEXT:='AAA' #13 #10 'BBB'; 會出現"Undefined symbol MEMO1.TEXT" 我目前的狀況是這樣的: 由Delphi ADOQuery抓出資料後,將資料傳到FastReport, 在FastReport拉了一個 Insert rectangle object 放入PageHeader Band,物件名稱是Memo1, 雙按Memo1,並在下半部begin end區塊中輸入以下程式碼: [REM2] ------------------------------------------------------------------------------------------------------------------------------------------------- begin WHILE POS('^^',[ADOQuery1."REM"])<>0 DO BEGIN REM2:=COPY(REM2,0,POS('^^',REM2)-1) ' ' COPY(REM2,POS('^^',REM2) 2,LENGTH(REM2)); END; end 本來是以空格取代'^^'字元,但是後來在User的要求下, 希望能將 '^^' 前後的兩串字串分為兩行顯示: ******************************************************** 原字串:第一筆明細資料^^第二筆明細資料 希望顯示結果:第一筆明細資料 第二筆明細資料 ******************************************************** 在上述程式碼中,我試過以#13#10、#13、#10、#13 #10..等等代替空格 REM2:=COPY(REM2,0,POS('^^',REM2)-1) #13 #10 COPY(REM2,POS('^^',REM2) 2,LENGTH(REM2)); 都只會出現"第一筆明細資料"這第一行的內容, 感覺上斷行功能好像成功了...可是除了第一行外,其他的資料都不見了... 請問這是為什麼呢? 我該插入什麼字碼才能夠斷行呢? 如果斷行功能成功,那我該怎麼顯示多行呢? 在該物件(Memo1)的"Stretched"屬性設為 True;"WordWrap"屬性設為 True; 所以欄位高度不夠的可能性可以排除了, 再次感謝 chris681016 網友熱心幫忙,再次請大家多多指教,謝謝~
編輯記錄
supertony 重新編輯於 2007-06-07 17:15:03, 註解 無‧
|
chris681016
中階會員 發表:69 回覆:122 積分:98 註冊:2006-10-12 發送簡訊給我 |
|
hua2000
中階會員 發表:102 回覆:200 積分:65 註冊:2006-11-04 發送簡訊給我 |
|
supertony
一般會員 發表:8 回覆:9 積分:3 註冊:2006-07-11 發送簡訊給我 |
萬分感謝 chris681016、hua2000網友的幫忙以及熱心指導,
小弟不才...嘗試了一天,還是只能顯示第一行的資料, 換行符號後的內容都沒有顯示... ~>_<~ 所以改變方式,不在FastReport元件中對抓回的資料做處理, 改在SQL指令時就先取代字串, 我連接的資料庫是DB2, 使用的語法如下: SELECT REPLACE ( REM , '^^', concat(CHR(13),CHR(10)) ) FROM TABLE 目前已可正確顯示斷行格式及所有資料, 再次感謝chris681016、hua2000網友撥冗指教~ ^0^ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |