<<深入浅出MFC>>读书笔记暨问题汇总

wangyangcheng 2005-02-16 12:12:40
因为看此书时碰到的许多问题我想只有同是正在看此书的朋友最清楚,

所以我想专门开一贴,所有正在看此书的朋友都可将问题进来集中起来讨论。

当然,有文笔好的同志能将读书心得与大家分享是最好不过了!(除诗歌外体裁不限,字数不限^-^)

我先将搜到的几个问题罗列于此:


《深入浅出MFC》之不明问题!
http://community.csdn.net/Expert/topic/3754/3754960.xml?temp=.1042902

深入浅出mfc看书疑问?
http://community.csdn.net/Expert/topic/3428/3428376.xml?temp=.9934503

看了深入浅出MFC中的一个疑惑
http://community.csdn.net/Expert/topic/3592/3592372.xml?temp=1.887149E-02

深入浅出mfc看书疑问
http://community.csdn.net/Expert/topic/3433/3433319.xml?temp=.2987329

小弟,我现在正在看《深入浅出MFC》,有个问题想问一下各位大哥!
http://community.csdn.net/Expert/topic/3398/3398541.xml?temp=2.721804E-02

有谁看过《深入浅出mfc》,有关command routing一节我看不太明白,请大家帮助!!!
http://community.csdn.net/Expert/topic/3358/3358355.xml?temp=.3116419


《深入浅出MFC》中Command Routing一节有些不懂的地方。正如P153页所说的,当CMyFrameWnd对象获得一个WM_COMMAND时,所引起的消息怎么会
http://community.csdn.net/Expert/topic/3298/3298368.xml?temp=.4005701

请指教:不明白《深入浅出MFC》中用 DECLARE_DYNCREATE 进行动态生成而直接不用 new?
http://community.csdn.net/Expert/topic/3208/3208167.xml?temp=.6363794

学习《深入浅出MFC(第2版)》 第八章(Document-View深入探讨) 遇到的问题
http://community.csdn.net/Expert/topic/3148/3148140.xml?temp=.1375696













...全文
321 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
BruceJiang 2005-08-31
  • 打赏
  • 举报
回复
up
oyljerry 2005-08-31
  • 打赏
  • 举报
回复
Q0,看assert位置
Q1 在OnDraw中画
temp0001 2005-08-31
  • 打赏
  • 举报
回复
mark
billy145533 2005-08-31
  • 打赏
  • 举报
回复
好贴,顶一下
guosx 2005-08-31
  • 打赏
  • 举报
回复
gz,谢谢
he_sl 2005-08-31
  • 打赏
  • 举报
回复
xuexi
nkwesley 2005-08-31
  • 打赏
  • 举报
回复
zhangjiecsdn 2005-08-31
  • 打赏
  • 举报
回复
关注
sapphirez 2005-08-31
  • 打赏
  • 举报
回复
Q1 我觉得在响应擦除背景消息(好像是WM_ERASEBKGND...忘了)比在响应WM_PAINT(也就是OnDraw)中画快
wangyangcheng 2005-02-16
  • 打赏
  • 举报
回复
QQ:6776563

我现在遇到的问题:

Q0.如何将使用CView的工程迁移到CScrollView? 手工把所有的CView改成CScrollView,运行时报Debug Assert错误。

Q1. 我是模仿做一个MSDN中的Scribble例子,现在在View中用mouse画了东西之后,若将窗口最小化之后再还

原或者改变其大小,则原来绘的图全没了?不知问题在哪?


Q2.AppWizard生成的SDI程序可否改成多文档的?

是否是在CMyWinApp::InitInstance()中改?


Q3.JJHOU之〈深入浅出MFC〉书中的Scribble例子Step4之后,不知为何每次启动程序后左键单击View则
整个View便会变成黑色的,有谁遇到过吗?


改变光标:
Q4。改变整个程序的光标:在CMyView::PreCreateWindow()中对cs进行改 造,如:
cs.lpszClass=AfxRegisterWndClass(CS_HREDRAW,AfxGetApp()->LoadStandardCursor(IDC_UPARROW), ::CreateSolidBrush(RGB(255,122,0)));
我有试验成功。


Q5.重载CMyView::OnSetCursor()
其内容譬如:
BOOL CScribbleView::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
// TODO: Add your message handler code here and/or call default
if( 当前光标在客户区 )
{
m_hCursor = AfxGetApp() ->LoadCursor( IDI_DiamondCursor );
::SetCursor(m_hCursor );
return true; //自已设置光标为何这里要返回true?
}
return CView::OnSetCursor(pWnd, nHitTest, message);
}
而且这样之后在光标移出客户区然后 再移进来时就恢复系统默认光标了,Why?是否与我的第4个问题有关?



Q6. WM_SETCURSOR消息是谁在何时触发?
比如我不在此消息中变更光标,而在OnMouseMove()中变更光标,可否?
但我试验的结果似乎没有效。
有人说:
OnMouseMove中可以实现,不过还需要SetCapture,ReleaseCapture,当进入View窗口时ReleaseCapture,移出时SetCapture


Q7.MSDN上有这么一段话:

If your application must set the cursor while it is in a window, make sure the class cursor for the specified window's class is set to NULL. If the class cursor is not NULL, the system restores the class cursor each time the mouse is moved.

我不知到哪里去把谁"set to NULL"?
老夏Max 2005-02-16
  • 打赏
  • 举报
回复
LOOK LOOK!
兔子-顾问 2005-02-16
  • 打赏
  • 举报
回复
up
fanqing 2005-02-16
  • 打赏
  • 举报
回复
gz
CreaTive1911 2005-02-16
  • 打赏
  • 举报
回复
mark
guyulongchuan 2005-02-16
  • 打赏
  • 举报
回复
矛盾朋友,说开就开啊,能给qq吗,交流下:)

16,471

社区成员

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

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

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