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

QReport 列印時,若一個欄位資料長度過長,該如何讓它自動換行呢

答題得分者是:cmj
Nelson Lo
一般會員


發表:35
回覆:87
積分:24
註冊:2003-04-04

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-10-09 08:53:17 IP:61.221.xxx.xxx 未訂閱
請教各位 QReport 列印時,若一個欄位資料長度過長,有沒又辦法讓它自動換行呢(類似Memo) 然後整行欄位高度也變成2行或3行 謝謝
Nelson Lo
一般會員


發表:35
回覆:87
積分:24
註冊:2003-04-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-10-09 09:07:09 IP:61.221.xxx.xxx 未訂閱
剛才翻了一下以前網友們問的和回答的 我照著設定 qrdbtext屬性設定: AutoSize:=False AutoStretch:=True WordWrap:=True 它有自動換列到下一行 但是卻沒有自動加大列高ㄝ
Nelson Lo
一般會員


發表:35
回覆:87
積分:24
註冊:2003-04-04

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-10-09 09:13:44 IP:61.221.xxx.xxx 未訂閱
補充一下 我是指DetalBand內的QRShape並不會自動調整高度 是不是一定要自己寫程式ㄚ 但是好像沒有可供判斷的條件ㄝ 發表人 - Nelson Lo 於 2003/10/09 11:08:35
cmj
高階會員


發表:15
回覆:242
積分:226
註冊:2002-06-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-10-09 17:12:41 IP:211.76.xxx.xxx 未訂閱
引言: 補充一下 我是指DetalBand內的QRShape並不會自動調整高度 是不是一定要自己寫程式ㄚ 但是好像沒有可供判斷的條件ㄝ 發表人 - Nelson Lo 於 2003/10/09 11:08:35
QRShape 要依QrDbText之Width,Height寫程式調整, 在DetailBand1BeforePrint事件中做
niel
一般會員


發表:2
回覆:1
積分:0
註冊:2002-03-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-10-14 09:03:06 IP:163.18.xxx.xxx 未訂閱
欄位資料如果是中文則無效,如何處理呢
Nelson Lo
一般會員


發表:35
回覆:87
積分:24
註冊:2003-04-04

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-10-14 09:16:36 IP:61.221.xxx.xxx 未訂閱
之前有一位kulius 大大有回答過 我把原文轉載在此 呵。。樓上都說要寫程式了. 還不自己去找。 如下。這不是我寫的。 是從深度論談的高手寫的 // 判斷所截斷的字是否為中文 // instr : 要被截斷的字句 // cutlength : 截掉的Byte數 function TReportBase.TruncNonChiChar(instr: string; cutlength: integer): string; var sCuted: string; temp: string; iCutLength: integer; j: integer; bIsDBCS: boolean; begin temp := ''; // 截出 _LengthPerLine 個字元出來 iCutLength := cutlength; repeat sCuted := Copy(instr, 1, iCutLength); iCutLength := Length(sCuted); bIsDBCS := False; // 看看最後一個字元是不是中文的前半個字 for j := 1 to iCutLength do begin if bIsDBCS then bIsDBCS := False else if Windows.IsDBCSLeadByte(byte(sCuted[j])) then bIsDBCS := True; end; // 如果最後一個字是中文的話, 少截一個字元 if bIsDBCS then Dec(iCutLength); temp := temp (Copy(instr, 1, iCutLength)) #13; instr := Copy(instr, iCutLength 1, Length(instr) - iCutLength); until Length(instr) <= 0; TruncNonChiChar := temp; end;
系統時間:2024-05-06 4:15:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!