有很多方法啊
1.Graphics::FormDC
继续BitBlt2.Graphics::GetDC
继续BitBlt3.Graphics::FormBitmap
然后把Bitmap画到另外一个Graphics
1.Graphics::FormDC
继续BitBlt2.Graphics::GetDC
继续BitBlt3.Graphics::FormBitmap
然后把Bitmap画到另外一个Graphics
解决方案 »
- 怎么获取网页中的天气
- 急!!大侠求您了!(appface 皮肤失效问题)
- 怎样禁用关闭按钮,叉的那个按钮。
- socket编程 HTTP协议 POST 提交表单 COOKIE 模拟论坛登陆
- c++和VC++的区别是什么?学VC++是否要先学好C++?
- 哪个VC通用控件可以显示自己随意指定的m行n列数据,力求方便简洁。用过的来!!!
- Debug Assertion Failed 是怎么回事?
- 菜鸟来送分:MFC的CSocket如何把OnAccept等事件绑定到窗体的?
- 请问如何改变CStatic 或 CEdit 中的字体?
- 乐于助人的朋友,来吧!
- 如何把unicode中的字符转为字模
- C++ shell运行托盘程序右键菜单
你说的第一条,第二条,实际是回到了使用CDC来做, 而不是使用Graphics, 如果Graphics不是从DC构造的, 1,2方法就不可用了.对于第三条, 这又是借助于Bitmap了. 同样有1,2条的缺点, 如果我要的仅仅是从两个DC间复制呢?我想要的方法还是能直接或者间接以Graphics对象为基础. 像CDC那样方便的相互复制.
目的是返回一个纹理画刷, 在WM_CTLCOLOREDIT的时候.纹理画刷, 我先想到的就是TextureBrush
而TextureBrush的构造需要一个Image对象.
而我又想把内存DC上内容作为纹理绘制.
想把DC中的内容放到TextureBrush中.我想到的方法就是两个Grahics作为中转.
因为Graphics既可以从DC构造, 也可以从Image构造.
这样DC和Image就有了共同的关联点.
所以, 只有解决了Graphics对象间的数据复制, 就可以创建出一个纹理画刷了.当然, 中间还有一个比较重要的问题, 就是怎么从TextureBrush转换到HBRUSH句柄? 这也是一个问题.