subject_66323.htm

来自「vc」· HTM 代码 · 共 81 行

HTM
81
字号
<p>
序号:66323 发表者:sensen 发表日期:2003-12-23 19:27:42
<br>主题:打印一个对话框上的所有东西~~~~~~~急~~~~~急~~~~~急~~~~~急~~~~~
<br>内容:假如有一个对话框,上面没有button<BR>只有编辑框和文本框等,如何才能得到对话框上的所有数据并送给打印机呢???<BR>请各位高手指点,<BR>如果有类似的程序最好,也可以提供一些函数<BR>谢谢~~~~~~~~~~~
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:爱夜公爵 回复日期:2003-12-23 20:41:37
<br>内容:好像Cedit类有相应的打印函数, 去查msdn.
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-23 21:32:21
<br>内容:我是要打印一个对话框标题栏似下的所有东西啊<BR>如下图
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-23 21:34:16
<br>内容:啊图没上来啊
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-23 21:35:41
<br>内容:再传
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-24 17:45:57
<br>内容:我顶
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:胖色盲 回复日期:2003-12-24 18:43:25
<br>内容:看你这么着急,给个思路你,<BR>抓图之后存成一个临时的bmp,打印!<BR>具体怎么实现,自己看着办吧!<BR>谁让你问这么个怪问题!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-24 19:08:39
<br>内容:神啊救救我吧,圣诞节我还坐在电脑前面啊<BR>为什么知道的高手,不能帮我一下呢??<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:浪际天涯 回复日期:2003-12-24 19:31:03
<br>内容:抓图的方法可以,我以前对CHtmlView这么做过,不过一屏显示不下的话要滚屏再抓,抓完后把所有图接起来存到文件中,对话框的话就没那么麻烦了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-24 20:03:49
<br>内容:可关键是我不知道电脑的屏幕这么大,我怎么只抓出一个这个对话框标题栏的下面一部分呢??
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:打杂 回复日期:2003-12-24 21:06:19
<br>内容:抓自己程序的对话框还是要抓别的进程对话框?<BR>用BitBlt抓,有个缺点就是被遮挡则错误~~
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:sensen 回复日期:2003-12-25 10:00:00
<br>内容:我抓的是自己的程序,<BR>比如:在上面的About对话框上加一个菜单做为按钮,<BR>按一下按键就抓取菜单以下部分窗体<BR>有劳大家了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:林建华 回复日期:2003-12-25 10:22:46
<br>内容:用ALT+PrtSc可以抓取当前激活的窗口而不是整个显示器
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:打杂 回复日期:2003-12-25 14:20:01
<br>内容:对话框代码,抓它:<BR>=========================================================================================<BR>在对话框CxxxDlg.h加入如下成员函数:<BR>public:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;void OnCapture();<BR><BR>在实现文件CxxxDlg.cpp头部加入如下函数声明:<BR>void DlgToBmp(CWnd * pWnd);<BR><BR>函数:<BR>CxxxDlg::void OnCapture()<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;DlgToBmp(this);<BR>}<BR><BR>void DlgToBmp(CWnd * pWnd)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CDC dc;<BR>&nbsp;&nbsp;&nbsp;&nbsp;HDC hDC = ::GetDC(pWnd-&gt;m_hWnd);<BR>&nbsp;&nbsp;&nbsp;&nbsp;dc.Attach(hDC);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CDC m_pMemDC;<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_pMemDC.CreateCompatibleDC(&amp;dc);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;CRect rect;<BR>&nbsp;&nbsp;&nbsp;&nbsp;pWnd-&gt;GetClientRect(&amp;rect);<BR>&nbsp;&nbsp;&nbsp;&nbsp;CSize sz(rect.Width(),rect.Height());<BR>&nbsp;&nbsp;&nbsp;&nbsp;CBitmap bitmap,*pOldBmp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;bitmap.CreateCompatibleBitmap(&amp;dc,sz.cx,sz.cy);<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;pOldBmp = m_pMemDC.SelectObject(&amp;bitmap);<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_pMemDC.BitBlt(0,0,sz.cx,sz.cy,&amp;dc,0,0,SRCCOPY);//抓Dlg客户区,被遮挡则 LoL<BR>&nbsp;&nbsp;&nbsp;&nbsp;//ToDo:自己处理这个bitmap~~<BR>&nbsp;&nbsp;&nbsp;&nbsp;//Your code...<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;//下面是发送到剪贴板的参考示例:<BR>&nbsp;&nbsp;&nbsp;&nbsp;/*pWnd-&gt;OpenClipboard();<BR>&nbsp;&nbsp;&nbsp;&nbsp;::EmptyClipboard();<BR>&nbsp;&nbsp;&nbsp;&nbsp;::SetClipboardData(CF_BITMAP,bitmap.m_hObject);<BR>&nbsp;&nbsp;&nbsp;&nbsp;CloseClipboard();<BR>&nbsp;&nbsp;&nbsp;&nbsp;m_pMemDC.SelectObject(pOldBmp);<BR>&nbsp;&nbsp;&nbsp;&nbsp;bitmap.Detach();*/<BR>}<BR>2003-12-25 15:11:53

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?