关于HWND、DC之间的关系请教

hjgmx hjgmx 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
为了方便的采用MM_HIMETRIC映射,并且在另外一个类中进行绘图处理,在VIEW类之外新建了一个类CMyDraw,在改类中进行绘图操作。绘图前将CDC* pDC传递给CMyDraw。
然而,在CMyDraw中调用DPtoLP进行转换时(将屏幕上获取的鼠标位置传递给CMyDraw时),总是失败(不进行转换)。如果调用DPtoLP前,调用一下SetMapMode,则有时成功,有时失败(SetMapMode失败)。
同样,如果将CView的m_hWnd传递给CMyDraw,采用::SetMapMode(),::DPtoLP,也是有时失败(::SetMapMode),请高手给一个方案或者解释。

BTW:在CView中采用GetDC()->SetMapMode从来不会失败。
...全文
评论
收藏 已收藏
分享
返回顶部
hjgmx
界面 15,976 成员 115,866 内容