工具栏浮动光标位置显示时钟显示改变光标形状
1>建立工程名为FD的工程
在Menuu里建立PLAY,建立类向导在视图类里定义变量添加代码playflag=!playflag;
if(playflag)
SetTimer(1,100,NULL);
else KillTimer(1);
另也在视图类里添加时间函数ontimer,代码Invalidate(); 在上面CZZY4View::CZZY4View()里添加代码
x=0;
playflag=false;
在ondraw里添加代码
CRect rect;
GetClientRect(rect);
x=x+4;
if(x>rect.right-rect.left)x=0;
pDC->TextOut(x,100,"hello,vc++");
在view.h的operations,public中添加bool playflag; int x;
(插入 资源 Toolbar 确定) 2>建立Toolbar资源
3>给toolbar建立6个图标 双击图标建立ID (ID_LINE ID_RECT ID_ELLIPSE
ID_HAND ID_COLOR ID_CLEAN)
4>给这6个ID分别在视图类中建立消息函数(查看 建立类向导 MessageMaps
classname=CFDView ObjectID=ID_LINE(以此类推) messages=COMMAND add
functions)
5>在mainfrm.h的public下定义变量 CToolBar m_toolbar; 6>在mainfrm.cpp的oncreate函数下加入代码
m_toolbar.Create(this,CBRS_LEFT|WS_VISIBLE);
m_toolbar.LoadToolBar(IDR_TOOLBAR1); m_toolbar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_toolbar);
//上述完成可以使工具框浮动
7>在MainFrm.h中修改其中一个里面定义了变量的protected为public 8>在视图类中添加鼠标移动按钮(查看 建立类向导 Classname=CFDView Objectname=CFDView messgae=WM_MOSEMOVE) 9>在鼠标移动的消息函数中添加代码
CString str;
str.Format("x=%d,y=%d",point.x,point.y);
CMainFrame *pframe=(CMainFrame *)AfxGetMainWnd();
pframe->m_wndStatusBar.SetPaneText(0,str);
再在上面定义头文件#include "MainFrm.h"
//上述操作完成可以看见鼠标坐标
10>在框架类中建立时间的消息函数(查看 建立类向导
Classname=CMainFrame Objectname=CMainFrame messgae=WM_TIMER)
11>在各个建立的时间消息函数中添加代码
CTime t=CTime::GetCurrentTime();
CString str=t.Format("%H;%M;%S");
m_wndStatusBar.SetPaneText(1,str,true);
12>在MainFrm.cpp中找OnCreate函数 在其中加入代码 SetTimer(1,1000,NULL)
13>最后在MainFrm.cpp找ID_SEPARATOR,将ID_SEPARATOR复制2份放在原来位置
//上述完成可以使时间按显示
光标引入代码:CRect rect1(0,0,300,300);
if(rect1.PtInRect(point))
SetCursor(LoadCursor(NULL,IDC_WAIT));
else
SetCursor(AfxGetApp()->LoadCursor(IDC_HAND));