📄 untitled-46.txt
字号:
82 MFC Windows程序设计(第2版)
土nt flSCf0llPOS= funVsCI0llPOS+ flDelta;
上fit flMflXPOS=ItL- SV上SSHS主ght-Ifi-- flVPflgflS土flfl;
。f(nscrollPos、 0)
SDSltS=-IlL- SVSCC01工POS;
else if(nscrollPos> nMaxPos)
SDSltS= flMflXPOS-flVSCC0llPOS;
if("Delta!= o)1
ffeflVSCYOllpOS十一 nDglts;
SetscrollPos(SB.VERT, m-nVScrollPos, TRUE);
Scrollwindow(0,-"Delta);
3
I
图2.14 Accel应用程序
当接收到WM—CREATE消息时,CMainwindow的OnCreate处理程序调用GetDeviceCaps。
WM—CREATE是窗口接收到的第一个消息。这个消息只发送一次,并在窗口的生存期之初
就到——甚至在窗口还没有被显示在屏幕上之前。窗口消息映射表中的ON.WM.CREATE
项将WM—CREATE消息连接到成员函数onCreate。有一些成员变量的值只能在运行中决
定,OnCreate则是初始化这些变量的理想方法。它的原型为:
afx-msg nit OnCreate(LPCREATESTRUCT lpCreatestruct)
IPCreatestruct指向一个CREATESTRUCT类型的结构,其中包含了一些关于窗口的重要
信息,比如窗口的原始尺寸和在屏幕上的位置。由onCreate返回的值决定了窗口的下一步
行为。如果一切按计划进行,则OnCreate返回O,通知Windows窗口已被正确初始化。如果
onCreate返回一l,则Windows将不能创建这个窗口。onC。ate处理程序原型如下:
nit CMainwindow::onCreate(LPCREATESTRUCT lpCreatestruct)
3
。f(CFra。ewnd::onCreate(lpCreatestruct)==-l)
returnl;
retUrn 0;
Z
onCreate应该总是调用基类的onCreate处理程序,以使框架结构有机会执行自己的窗
回创建代码。在编写文档/视图应用程序时这一点尤其重要,因为onCreate是由创建框架窗
口中视图的 CFramewnd:: onCreate调用的。
您还会在窗口的OnHScroll和onVScroll处理程序中发现实现滚动的代码。switchcase
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -