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

列印需折疊的報表心得報告

尚未結案
海星
高階會員


發表:41
回覆:217
積分:106
註冊:2003-01-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-13 00:32:22 IP:61.59.xxx.xxx 未訂閱
這次寫的案件,對方需要把列印出來的報表中間對折,因此報表中間必須留空白 。    如果直接用 QRDBLabel元件,那他肯定會一直印過去,中間不會留下空白,突然間被我想到一個方法,那就是就是使用 QRLabel 元件代替 QRDBLabel。    概略說明: 在  QRBand1BeforePrint() 事件內,設定  {   QRLabel->Caption = Query1->FieldByName("要顯示的欄位")->AsString; }    並且每列印一次,計數器就加1,等到印到10行(看你半面是幾行), 就把 QRLabel->Caption  設定為空白,虛擬碼如下    if( i == 10 || i == 11 ) {    QRLabel->Caption = ""; }    這樣中間就會變空白了,另外甚至每"半頁",你都可以自己設定 ColumnHead 的標題內容,BandType 不需再有 "rbColumnHeader"屬性,全部都直接搞定。 (也是改 QRLabel內容)    直接看我傳上來的圖比較能懂得我在說啥, 附帶幾點說明 (1)因為對方的列表機是 B4規格,而我的列表機只有A4規格而已,所以預覽 列印會被切割,無法完全顯示,這可以說是QReport 的bug,也可以說不是。 (2)還有我還沒寫好,圖中間那個對折線,其實可以拿掉,我想睡覺了,程式 碼明天再說,不想繼續寫了。(改frame 屬性) (3)這些資料關係到私人的隱私,所以我有做馬賽克塗黑處理,請見諒。 (4) 列印Head行跟空白行時,資料庫記得要做 Prior() 處理,不然你的 資料會少很多行。
系統時間:2017-12-15 16:07:21
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!