Re 对话框中打印问题

zlshi 2000-07-11 09:13:00
void CMydialog::OnPrint()
{
char szprinter[80];
char *szDevice,*szDriver,*szOutput;
HDC hdcprint;
static DOCINFO di={sizeof(DOCINFO),"printer",NULL};
GetProfileString("windows","device",",,,",szprinter,80);
if((szDevice=strtok(szprinter,","))!=NULL&&(szDriver=strtok(NULL,","))!=NULL
&&(szOutput=strtok(NULL,","))!=NULL)
{ if((hdcprint=CreateDC(szDriver,szDevice,szOutput,NULL))!=0)
{ if(StartDoc(hdcprint,&di)>0)
{ StartPage(hdcprint);
SaveDC(hdcprint);
TextOut(hdcprint,1,1,"这是一个例子",12);
MoveToEx(hdcprint,20,20,NULL);
LineTo(hdcprint,120,120);
RestoreDC(hdcprint,-1);
EndDoc(hdcprint);
EndPage(hdcprint);
MessageBox("打印完毕","提示",MB_ICONINFORMATION);
}
DeleteDC(hdcprint);
}
else
{ MessageBox("没有默认打印机");
return;
}
}
}
结果第一次打印正常,但接着打第二次是就出现提示信息,“写入打印机端口出错
无法访问端口,其他程序可能正在使用该端口”,请问这是怎么一回事?
...全文
84 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
sun2000 2000-07-11
  • 打赏
  • 举报
回复
你把下面两句语句倒一上
EndDoc(hdcprint);
EndPage(hdcprint);
zlshi 2000-07-11
  • 打赏
  • 举报
回复
我刚才试了试,果然是对的,多谢大侠救命!
浩辰CAD8最新版本提供了完备的注释性比例(Annotative Scale)功能,并根据用户提交的需求对字段(FIELD)、自定义界面(CUI)、查找、标注、打印等一些重点功能进行了改进。经过上千用户的验证测试,软件的正确性和稳定性均有明显提升。 一、64位浩辰CAD软件 由于Windows操作系统所限,32位软件只能分配使用2G内存。64位版本的浩辰CAD8可以充分利用用户更大的物理内存,顺畅打开和编辑占用内存很多的超大型图纸。 二、新增和重点改进功能介绍 1、注释性比例 浩辰CAD8 增加了对象、空间、视口的注释性比例和相关设置功能。调整空间和视口的注释比例,文字、标注、图块、填充等注释性对象的尺寸将自动调整,用户可以更快速地实现多比例地布图、出图。 注释对象比例(OBJECTSCALE):可设置注释性的对象是多比例打印出图时要求尺寸一致的图面元素,例如文字、标注、填充、符号图块等。对象注释比例可通过命令、右键菜单、属性框多种方式进行添加,一个对象可设置多个比例,通过设置空间或视口的注释比例可控制对象的显示比例。 注释比例(CANNOSCALE):模型空间或布局空间视口可设置注释比例,用于控制注释性对象的显示比例。比如用户如果想分别按1:100、1:50和1:20打印同一张图纸,只需要调整空间的注释比例,文字和标注箭头大小就会自动调整,保证最终不同比例打印的文字高度和标注的大小是一致的,如下图所示。 在布局空间如果要设置不同比例的多个视口时,利用注释性比例可让所有视口的文字、标注等图形的打印尺寸保持一致,如下图所示。 浩辰CAD8在底部状态栏增加了用于设置注释比例、控制注释性对象显示及添加比例的按钮,常规状态下状态栏按钮显示为: ,布局空间选视口后按钮显示为: 。 2、字段(FIELD) 字段增加了”对象(OBJECT)”类别,用户可以将对象属性或公式作为字段内容。比如可以选择一个填充的面积作为字段内容,当填充边界被编辑后,字段将自动更新,如下图所示。 注:图形调整后,需要RE(重生成)后字段的数值才会更新。 三、近期增加的重要功能 1、放大镜 利用放大镜功能可以减少视图缩放的次数,提高操作的效率。当图形比较密集,需要观察图形的局部细节或者进行准确定位时,可打开放大镜,关闭放大镜即可返回原始视图。放大镜效果如下图所示。 与缩放、平移操作类似,可以利用鼠标键来调用放大镜功能。在状态栏按下启用鼠标键激活放大镜的按钮,单击鼠标键就可打开或关闭放大镜。 如果不想用鼠标键,可以用快捷键CTRL E来开关放大镜,此快捷键还可根据自己的喜好在CUI(自定义用户界面)对话框定制。 放大镜分为“区域”和“窗口”两种模式,右键单击 按钮可以在对话框设置放大镜的模式、放大镜形状、初始放大倍数、放大镜尺寸以及放大镜外围图形的褪色度。 区域 只在放大镜区域内放大图形,保留背景图形不变。如需要在绘图过程使用放大镜,可先执行命令,光标定位到需要放大的区域时按快捷键打开放大镜,完成操作后,按快捷键关闭放大镜。放大镜打开时,放大镜范围内可以自由进行缩放、平移,绘图等操作。 窗口 整个图形按倍数放大,充满整个图形窗口。此时光标不受任何限制,可以在整个图形窗口进行视图缩放、捕捉、绘图等各种操作,关闭放大镜可立刻返回原始视图。 2、 自定义用户界面(CUI) 全新开发的CUI功能相比2012版有质的飞越,不仅提供了更全面的功能,而且从用户体验的角度出发,简化了对话框的结构、增强了操作的交互性。 RIBBON界面和经典界面均可定制,功能更全面。 新版CUI不仅可以定制经典界面的菜单、工具栏,也可以定义RIBBON界面的面板、选项卡,同时还可以定义快速访问工具栏、快捷菜单、键盘快捷键和双击动作。 面板的定制界面和各种控件 将界面元素定义和工作空间分开,结构更清晰。 同类软件CUI界面将工作空间与界面元素都放到一个树形列表,如果想从树形列表将某一个元素拖放到某个工作空间里,不仅操作麻烦,而且经常会定位错误。浩辰CAD8将工作空间提取出来,定义工作空间时在左右两个树形列表间进行拖放,操作简便,且不易误操作。 提供更丰富的操作方式,交互性更好。 CUI对话框主要采用右键菜单和拖放两种操作模式,由于元素定义的树状列表很复杂,浩辰CAD8尽可能提供简便的操作方式。在定义面板时,用户不仅可以将命令拖放到树状列表,也可以将命令拖放到面板预览,还可以再面板预览拖放命令。 3、 多重引线(MLEADER) 多重引线功能是引线功能的延伸,它可以方便地为序号标注添加多个引线,可以合并或对齐多个引线标注,在装配图、组装图上有十分重要的作用。 浩辰CAD8提供了多重引线的全部功能,用户可以设置多重引线样式、创建引线、增加和删除引线,并且可以进行引线对齐和合并。如下图所示。 四、其他重点改进功能 1、打印:布局空间打印支持缩放线宽,光栅图像虚拟打印机可以按像素来设置输出尺寸;解决了少数图纸OLE图片打印反向以及个别打印设备无法显示横、纵向纸张等问题。 2、查找(FIND):对查找替换功能进行了系统改进,提升了查找替换的正确性,并同时改进了缩放和创建选择集操作的准确性。 3、填充:增加了大量自定义填充。自定义填充不仅支持添加单个填充文件,也可以将所有自定义填充全部添加到gcadusr.pat,方便填充图案的管理。 4、线型:在线型文件增加了一些特殊的线型。 5、参照裁剪(XCLIP):解决了反向裁剪无效的问题 6、多段线编辑(PEDIT):先选择多个图形后不再提示输入M及选择对象,可直接进行相关操作。 7、三维转平面(FLATTEN):解决了图块和多段线在转换被炸开的问题

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧