关于打印设置对话框(PageSetupDlg)的API调用的问题!(注:回答者必给分,谢谢!) 为什么不用Common Dialog ?很简单就可以调出PageSetupDlg 进行纸张设置和页边距及打印方向设置的。CommonDialog1.Flags = &H42CommonDialog1.ShowPrinter 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 CommonDialog好像没有一个Flags可以设置成可以设置页边距的常量的说。!!!!!!而且在我的程序中有这样一段,是通过调用Common Dialog设置打印机的属性的:'=================================================================================================== '1.直接用CommonDialog完成打印机设置对话框的调用 '打印机的设置 With cdgPrint .CancelError = True .Orientation = Printer.Orientation .Copies = Printer.Copies .flags = cdlPDPrintSetup .PrinterDefault = True .ShowPrinter '在没有进行Cancel操作时,进行打印方向和打印分数的设置 g_PageSetup.Orientation = .Orientation g_PageSetup.NumCopies = .Copies '存储打印机的参数 g_PrinterSetup.Height = Printer.Height g_PrinterSetup.Width = Printer.Width g_PrinterSetup.ScaleHeight = Printer.ScaleHeight g_PrinterSetup.ScaleWidth = Printer.ScaleWidthEnd With '=========================================================================================================就这样一段程序,可以在98操作系统中良好的运行的,每次我做了改变纸张和打印方向的操作以后,再次调用对话框的时候,对话框的参数也会相应地记录下我上次改动地值,这个操作象是commonDialog和Printer对象对windows注册表读写地操作,就是说,在我按ok键以后,改动的值自动存入注册表了。但是到2000操作系统下,这一段程序,完成不起作用,不会改变打印机对象Printer里面的参数,我反复做了很多次,都是如此。98和2000的差别还是很大的。看来,vb在对windows底层的操作是做得很差的,毕竟它也是用VC或者API写的嘛!这也是我不用Commondialog的一个原因吧。而且,commonDialog很占用系统资源的说。大侠们,在看看吧,研究一下API。我想我的pageSetupDlg调用程序中肯定还是有问题的。谢谢了。:) 请问这段程序有什么问题 word模版读数据库问题 SQL语句select case when end在VB或VBA中的应用?? 别人问我的VB作业题目,感觉有点怪,大家进来看看 combo问题 picture控件已经loadpicture了 telnet 的问题,大家快来看看############################# 如何写sql语句 水晶报表中 "仅字段定义" 添加变量很麻烦 又简便方法么? 有沒有中文版的介紹水晶報表的用法的相關書或文檔!? 利用VB6。0怎样读写注册表 请谈谈考勤机数据处理的经验,,,,
而且在我的程序中有这样一段,是通过调用Common Dialog设置打印机的属性的:
'===================================================================================================
'1.直接用CommonDialog完成打印机设置对话框的调用
'打印机的设置
With cdgPrint
.CancelError = True
.Orientation = Printer.Orientation
.Copies = Printer.Copies
.flags = cdlPDPrintSetup
.PrinterDefault = True
.ShowPrinter '在没有进行Cancel操作时,进行打印方向和打印分数的设置
g_PageSetup.Orientation = .Orientation
g_PageSetup.NumCopies = .Copies '存储打印机的参数
g_PrinterSetup.Height = Printer.Height
g_PrinterSetup.Width = Printer.Width
g_PrinterSetup.ScaleHeight = Printer.ScaleHeight
g_PrinterSetup.ScaleWidth = Printer.ScaleWidth
End With
'=========================================================================================================
就这样一段程序,可以在98操作系统中良好的运行的,每次我做了改变纸张和打印方向的操作以后,再次调用对话框的时候,对话框的参数也会相应地记录下我上次改动地值,这个操作象是
commonDialog和Printer对象对windows注册表读写地操作,就是说,在我按ok键以后,改动的值自动存入注册表了。但是到2000操作系统下,这一段程序,完成不起作用,不会改变打印机对象
Printer里面的参数,我反复做了很多次,都是如此。98和2000的差别还是很大的。看来,vb在对windows底层的操作是做得很差的,毕竟它也是用VC或者API写的嘛!
这也是我不用Commondialog的一个原因吧。而且,commonDialog很占用系统资源的说。
大侠们,在看看吧,研究一下API。我想我的pageSetupDlg调用程序中肯定还是有问题的。谢谢了。:)