網(wǎng)站首頁
分類導(dǎo)航
試題中心
下載中心
英語學(xué)習(xí)
繽紛校園
考試論壇
網(wǎng)站留言
客服中心
 全國計算機等級考試二級VFP報表設(shè)計的常用技巧
【字體:
全國計算機等級考試二級VFP報表設(shè)計的常用技巧
http://m.1glr.cn 來源:考試吧(Exam8.com) 點擊: 更新:2006-11-30 9:19:12

  4.報表在設(shè)計時明明可以打印,可一安裝到其它機器或重裝系統(tǒng)后,就會出現(xiàn)“XXX 帶區(qū)太大不能放入頁中”等提示,而且無法正常退出(尤其是對自定義紙張大小的程序),這是為什么呢?  我們用報表設(shè)計器設(shè)計的打印程序,保存退出后,磁盤上就會出現(xiàn) .frx和.FRT文件,我們的所有設(shè)計均保存在這兩個文件中。在VFP中 .frx相當于.DBF表,.FRT相當于.FPT備注型文件,我們用USE XXX.frx 可以象打開.DBF文件一樣打開.frx文件,在.frx文件中有個Expr備注型字段名,在這個字段名中有如下內(nèi)容:其中()內(nèi)是我所加的譯文

RIVER=winspool
DEVICE=Epson LQ-1600K
OUTPUT=LPT1:
ORIENTATION=0   
PAPERSIZE=256       (紙張大小)
PAPERLENGTH=1000     (紙張長度)
PAPERWIDTH=1600      (紙張寬度)
DEFAULTSOURCE=8     (默認來源)
PRINTQUALITY=180     (打印質(zhì)量)
COLOR=2
YRESOLUTION=180
TTOPTION=1

從這個Expr備注型字段里可以看出:PAPERSIZE=256 這里的256表示是自定義紙張,如果:
PAPERSIZE=9 為A4、11為A5 具體數(shù)據(jù)見VFP幫助的Printfo()一節(jié), 而:
PAPERLENGTH=1000  (紙張長度)
PAPERWIDTH=1600   (紙張寬度)
則分別代表自定義紙張的長度和寬度。 之所以會出現(xiàn)上面提到的問題,是因為系統(tǒng)重新安裝打印機后,WIN系統(tǒng)一般默認的是A4打印紙,與我們設(shè)計時保存在.frx文件里的紙張不符,因而造成這種情況。 那么如何避免出現(xiàn)這個問題呢?
  下面是一段檢測紙張類型的代碼,供您參考:
這段代碼必須放在執(zhí)行report form ... 命令前。

use xxx.frx in 0 ALIAS mPrint    &&在空閑工作區(qū)以mPrint別名打開xxx.frx文件
x=atcline('PAPERSIZE',mPrint.Expr) &&取得PAPERSIZE在Expr字段中的行
sSIZE=subs(mline(mPrint.Expr,x),11) &&取得設(shè)計時保存的紙張類型
mSIZE=allt(str(Prtinfo(2)))     &&取得當前打印機默認的紙張類型
x=atcline('PAPERLENGTH',mPrint.Expr) &&取得紙張長度在Expr字段中的行
sLEN=subs(mline(mPrint.Expr,x),13)  &&取得紙張長度
x=atcline('PAPERWIDTH',mPrint.Expr) &&取得紙張寬度在Expr字段中的行
sWIDTH=subs(mline(mPrint.Expr,x),12) &&取得紙張寬度
use in 'mPrint'          &&關(guān)閉xxx.frx文件
if sSIZE=mSIZE          &&如果相符,則正常打印
 report form xxx.frx to printer
else
 Messagebox('請設(shè)定打印機紙張為自定義:長='+sLEN+',寬='+sWIDTH,0+48+0,'提示')
 report form xxx.frx to printer prompt &&打印前先打開打印機設(shè)置對話窗口
endi

  5.不讓打印的結(jié)果顯示在屏幕上
report form xxx.frx to printer Noconsole

  6.打印或打印預(yù)覽時,如何使系統(tǒng)打印工具條不出現(xiàn)  系統(tǒng)提供的打印工具條,我們無法檢測其各按鈕的事件,不能掌握用戶當時操作的情況,那如何不讓它出現(xiàn)呢?
 首先您得做一個表單(最好是模式表單),用于代替系統(tǒng)的預(yù)覽窗口(Preview),然后:
do form dybd          &&打開這個表單
report form xxx.frx windows dybd
  這樣系統(tǒng)提供的打印工具條就不會出現(xiàn)了。
  當然如果自己再做個類似于打印工具條的類,既可掌握按鈕事件又美觀就更好了,注:經(jīng)查VFP3.0可能沒有windows子句。

上一頁  [1] [2] 

文章錄入:ak47    責任編輯:ak47  
 版權(quán)聲明
   如果本網(wǎng)站所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系,我們將會及時處理。如轉(zhuǎn)載本網(wǎng)內(nèi)容,請注明出處。
 發(fā)表評論
關(guān)于本站 網(wǎng)站聲明 廣告服務(wù)  聯(lián)系方式  付款方式  站內(nèi)導(dǎo)航  客服中心  誠聘英才  友情鏈接   
Copyright © 2004-2007 考試吧 (Exam8.com) All Rights Reserved 
中國科學(xué)院研究生院中關(guān)村園區(qū)(北京市海淀區(qū))