| 上一篇主題 :: 下一篇主題   | 
	
	
	
		| 發表人 | 
		內容 | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 1 樓
  | 
		
			
				 發表於: 星期五 四月 20, 2007 5:38 pm    文章主題: foxpro打印程序的问题 | 
				     | 
			 
			
				
  | 
			 
			
				foxpro打印程序的问题
 
我在设置试卷打印程序,现有几个问题请教,请大师指教。
 
一、打印命令做的程序,不立即打印。因试卷题型很多类型,不便于用报表做,用打印命令做的程序,打印时,按下确定后,不是立即打印,而是整个程序系统退出后才打印,不知为何?用报表做的可以立即打印,不需要退出程序。可以打印的命令程序如下:
 
SET DEVI TO PRINT
 
SET PRINT ON
 
set headings off
 
set printer font "楷体",16
 
? space(16),atext1+atext2+"  "+atext3+" 考试试卷"
 
? " "
 
set printer font "宋体",11
 
? baoti
 
**?.......
 
**?.....
 
SET PRINT OFF
 
set device to screen
 
二、报表打印时打3份。有一个表单,彩用Do table1 with _caption 参数传递的方法,有5个报表调用这个表单,其中一个报表打印时打3份出来,没有作任何设定,查不出原因。
 
Do case
 
case thisform.caption="教师授课评分表"
 
report form kaopin3.frx to printer
 
case thisform.caption="教研室主任考核表"
 
report form kaopin4.frx to printer
 
case thisform.caption="教案讲稿评分表"
 
report form kaopin5.frx to printer
 
case thisform.caption="集体备课评议表"
 
report form kaopin6.frx to printer
 
endcase
 
三、foxpro有没有获取打印机的纸张设置命令或函数。
 
我想在程序中获取当前打印机的纸张设置的形式。如A3,A4,或横向或竖向,便于在程序中设置打印到一定的行数后,换页。 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		fpchin
 
 
  註冊時間: 2004-06-17 文章: 15 來自: Malaysia
  第 2 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 7:49 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				你可試試以下的方法:
 
set device to print
 
set print to
 
set print font to '宋體',10
 
.....
 
.....
 
....
 
set print to
 
set device to screen | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 3 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 8:58 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				問題三:  PRTINFO() 
 
            PRTINFO(2) 傳回預設打印機的紙張 _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 4 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 9:03 am    文章主題: 打印语句 | 
				     | 
			 
			
				
  | 
			 
			
				我用在第二个问题上,不起作用,还是打3张出来,而且打印前、打印后,各走1张纸.
 
我用这网络上说的方法printjob也不行。
 
printjob
 
_peject='NONE'
 
SET PRINT ON
 
SET PRINT TO DEFAULT
 
*!*SET PRINT TO
 
SET DEVICE TO PRINT
 
ENDPRINTJOB
 
或
 
printjob
 
_peject='NONE'
 
ENDPRINTJOB
 
SET PRINT ON
 
SET PRINT TO DEFAULT
 
SET DEVICE TO PRINT
 
只解决了按打印确定后,可以立即打印,但是老是走1张纸后,才开始打印。
 
 
结束打印的语句:
 
set print off
 
*!*set print to
 
SET DEVICE TO screen
 
 
在结束语句中,取消 set print to 后,算是在打印结束后不走空白纸了。而在开始打印时用set print to 的语句,还是走1张空白纸,需而且又出现的新的问题,不立即打印,而是在退出程序后才打印。 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 5 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 10:45 am    文章主題: 重写的打印问题 | 
				     | 
			 
			
				
  | 
			 
			
				| 谢谢Syntech!帮助解决了第三个问题。还有第1、第2个的问题,能否再指点。谢谢! | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 6 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 11:13 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				windows  列印處理原則本來就是以一頁為單位,
 
跟以前DOS處理的方式不一樣,
 
所以等到電腦送了一頁內容到列印處理器後,
 
才會開始列印.
 
但 VFP 有一個指令可以直接控制印表機, 沒試過是否可以直接一行一行的列印.
 
 ???
 
HELP裡這樣說的.
 
A group of three question marks bypasses the printer driver and sends the contents of cExpression directly to the printer. cExpression must contain valid printer codes. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 7 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 11:21 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				問題1:
 
印表機選項中 印表緩衝列印 的設定,
 
不過可能會有其他的影響就是.
 
在windows時代,使用 dos 程式列印就是設定這個地方.
 
 
以下是 WIN 2000 PRO 簡體版的設定 (sorry ,我的 vmware 虛擬機器中簡體環境是以2000 作代表)
 
你可能要試試不同設定的影響. _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 8 樓
  | 
		
			
				 發表於: 星期二 四月 24, 2007 3:19 pm    文章主題: 要foxpro驱动程序立即打印,不走空纸 | 
				     | 
			 
			
				
  | 
			 
			
				非常感谢Garfield and Syntech的指点.我现在要求只能解决第一个问题.用foxpro驱动程序能立即打印,不要在打印前走空纸就行了.
 
 
我不想用???命令的方式来设计程序,因已经用foxpro驱动程序设计好了。我想这个问题不可能都是这样的。
 
 
按 Syntech教授的设置打印机的方法:立即打印到打印机,我也设了,结果是,立即走一张空纸,打印机就不动了,而是退出程序后,才打印。我的系统是windows2003,打印机是Hp Deskjet 1280。我又将打印机设置成后台打印,勾选“启用打印机高级功能”,按“应用”,重新启动机器,再执行打印程序,目前的情况是:打印时,立即走一张空纸,再开始打印。退出程序后不走空纸了。我担心是不是HP公司把程序搞反了!给我的印象是立即打印到打印机,变成了后台打印,而后台打印,变成了立即打印到打印机。其它的用户是不是这样?我现在要求如何解决在打印前不让走空纸就行了。
 
 
为了测试这个打印程序,我的一包A4纸都快用完了,但是还没有解决问题! | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		syntech
 
 
  註冊時間: 2003-05-16 文章: 4252 來自: Taipei,Taiwan
  第 9 樓
  | 
		
			
				 發表於: 星期三 四月 25, 2007 11:11 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				這個方法主要是給 點陣印表機的.
 
因為我看你是用傳統的指令來印表.
 
傳統的印表方式是以 列 為單位
 
 
噴墨及雷射 應該還是用 VFP 標準報表工具作比較好.
 
這兩種印表機在WIONDOWS下都是以 張 為單位列印 _________________ 如果公司有下列困擾:
 
1. 找不到便宜,快速,簡易的 生產排程軟體
 
2. 不知道如何快速排定 採購計劃
 
3. 成本抓不準,自己算比軟體算有用
 
4. 想學習系統規劃,想找系統架構的顧問
 
 
請聯絡我們,也許我們幫得上忙 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 10 樓
  | 
		
			
				 發表於: 星期三 四月 25, 2007 5:04 pm    文章主題: Thaks | 
				     | 
			 
			
				
  | 
			 
			
				Syntech,
 
Thank you very much for editing  VFP programe to help me! The phenomenon to eject paper in my programe,let it continue,As I can't solution to it.There are many problem by useing report form in row() col(). | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		bin1x
 
 
  註冊時間: 2004-08-27 文章: 462
 
  第 11 樓
  | 
		
			
				 發表於: 星期三 四月 25, 2007 5:28 pm    文章主題: Re: 要foxpro驱动程序立即打印,不走空纸 | 
				     | 
			 
			
				
  | 
			 
			
				 	  | zfgg 寫到: | 	 		  非常感谢Garfield and Syntech的指点.我现在要求只能解决第一个问题.用foxpro驱动程序能立即打印,不要在打印前走空纸就行了.
 
 
我不想用???命令的方式来设计程序,因已经用foxpro驱动程序设计好了。我想这个问题不可能都是这样的。
 
 
按 Syntech教授的设置打印机的方法:立即打印到打印机,我也设了,结果是,立即走一张空纸,打印机就不动了,而是退出程序后,才打印。我的系统是windows2003,打印机是Hp Deskjet 1280。我又将打印机设置成后台打印,勾选“启用打印机高级功能”,按“应用”,重新启动机器,再执行打印程序,目前的情况是:打印时,立即走一张空纸,再开始打印。退出程序后不走空纸了。我担心是不是HP公司把程序搞反了!给我的印象是立即打印到打印机,变成了后台打印,而后台打印,变成了立即打印到打印机。其它的用户是不是这样?我现在要求如何解决在打印前不让走空纸就行了。
 
 
为了测试这个打印程序,我的一包A4纸都快用完了,但是还没有解决问题! | 	  
 
 
我的是 hp 3845 的,它印表時,好像是最後一頁先印,假設頁數全部送完
 
至於印表機直接印出的方法
 
確實有用
 
至少在xp  的平台上是這樣的
 
而那時,程式是foxpro 2.5 
 
一定是dos 的,還用et3 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 12 樓
  | 
		
			
				 發表於: 星期五 四月 27, 2007 5:04 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我用报表打印没有什么大的问题,就是如上面说的,有一个项,按理说,只打印一张,可是却打同样的3张出来!不可思议!至今不能解决.Bin1X,您能帮助找到原因吗?
 
 
用驱动程序设计的打印,能按设计要求打印。可是,在每次打印时,先打出一张空白纸,才开始打印有文字的。用驱动程序设计的打印,我也发现是从后向前打印的,那么每次打印时,先打出一张空白纸,很有可能是最后一个程序的问题,但是我的程序中如 eject 命令,却没有使用。
 
 
我用的是 V. Foxpro 9.0 | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		garfield Site Admin
  
  註冊時間: 2003-01-30 文章: 2160
 
  第 13 樓
  | 
		
			
				 發表於: 星期六 四月 28, 2007 4:23 pm    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				試著修改 report 檔,
 
在 file -->  PageSetup --> Page Lanout ==> 不要勾選 Save Printer Environment
 
 
或是採用 windows xp 內建的 HP 雷射印表機驅動程式, 
 
例如:  Hp LasertJet 6P(A4 size)  或 Hp LasertJet 4V (A3 size)
 
像我用 Hp LasertJet 1010 就無法用通用的自定紙張,
 
但改用 Hp LasertJet 6P 就 Ok了. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		zfgg
 
 
  註冊時間: 2004-05-31 文章: 179 來自: 中国
  第 14 樓
  | 
		
			
				 發表於: 星期日 四月 29, 2007 10:48 am    文章主題:  | 
				     | 
			 
			
				
  | 
			 
			
				我试过了, 
 
在 file --> PageSetup --> Page Lanout ==> 不要勾選 Save Printer Environment ,还是不行,又打了3张出来! | 
			 
		  | 
	
	
		| 回頂端 | 
		 | 
	
	
		  | 
	
	
		 |