rainbowzc

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: :: 管理 ::

2007年6月10日

摘要: 总结这段时间科研过程中的学习到的一些知识和小技巧。1。关于SendMessage发送CString的问题方法1:Send: CString *str = new CString ("aaa"); hwnd->SendMessage(WM_USER,0,(LPARAM)str);Recv: void myproc(.......) //自定义消息处理函数{ CString *pstr = (CString*)lparam; ....... delete pstr; //注意此处要删除前面send处new出来的CString }方法2:CString s="aa 阅读全文
posted @ 2007-06-10 18:33 ct 阅读(245) 评论(0) 推荐(0) 编辑

摘要: 在“E:/兴辉俊武/vc++学习笔记/动画图片操作/JPG图像加载及超连接”定义了所需的类 CPictureCtrl使你可以在任何对话框或窗口中把图像作为子窗口显示。 例如:关于对话框中加载IDC_MYIMAGE图像 classCAboutDialog:publicCDialog{ protected: CPictureCtrlm_wndPict; virtualBOOLOnInitDialog(); }; BOOLCAboutDialog::OnInitDialog() { m_wndPict.SubclassDlgItem(IDC_MYIMAGE,this);//I... 阅读全文
posted @ 2007-06-10 16:19 ct 阅读(460) 评论(0) 推荐(0) 编辑

摘要: 经常有朋友问雷神这样的问题:我在视图画的图象或者文字,当窗口改变后为什么不见了?OnDraw()和OnPaint()两个都是解决上面的问题,有什么不同?雷神在这里一并解答一下吧。OnDraw()和OnPaint()好象兄弟俩,因为它们的工作类似。至于不见了的问题简单,因为当你的窗口改变后,会产生无效区域,这个无效的区域需要重画。一般Windows回发送两个消息WM_PAINT(通知客户区有变化)和WM_NCPAINT(通知非客户区有变化)。非客户区的重画系统自己搞定了,而客户区的重画需要我们自己来完成。这就需要OnDraw()或OnPaint()来重画窗口。OnDraw()和OnPaint() 阅读全文
posted @ 2007-06-10 14:45 ct 阅读(135) 评论(0) 推荐(0) 编辑