VC精华教程:MFC入门系列(五)
2007-03-22 21:31:21 来源:WEB开发网核心提示: 指示光标的坐标,这个光标是相对于窗体的左上角的,VC精华教程:MFC入门系列(五)(3),这是我们要找的参数就是point,那么这个参数是CPoint 类型的,下一篇,我们讲GDI,我们再查CPoint 类型,如何查呢?一种查MSDN,另一种在工程中,右键点击CPoint这个文字
指示光标的坐标。这个光标是相对于窗体的左上角的。
这是我们要找的参数就是point,那么这个参数是CPoint 类型的,我们再查CPoint 类型,如何查呢?一种查MSDN,另一种在工程中,右键点击CPoint这个文字,出来的右键菜单中,点击goto the definition of CPoint 。我们看到了MFC的源码,CPoint本身是一个类,但是它是继承于一个结构的(tagPOINT)。我们看它的原始定义:
typedef struct tagPOINT
{
LONG x;
LONG y;
} POINT, *PPOINT, NEAR *NPPOINT, FAR *LPPOINT;
所以,我们就认为point 是一个结构。我们就把它当结构来用。我们已经得到了这个坐标(point.x,point.y),但是,它们都是长整型的,我们要把它转换成字符串。转换要使用一个类CString。这是字符串类,当然有转换函数。添加一下代码
CString str;//这是我们最後要赋值的字符串;
CString str_x;//X坐标
CString str_y;//Y坐标
str_x.Format("%d",point.x);//转换point.x到str_x
str_y.Format("%d",point.y); //转换point.y到str_y
str+="X: ";
str+=str_x;
str+=" ";
str+="Y: ";
str+=str_y;//以上是连接字符串到str中
s.SetPaneText(1,str,TRUE);//最后赋值给窗格
str_x.Empty();//下面是释放空间
str_y.Empty();
str.Empty();
我们再运行一下程序,我们晃动鼠标,观察状态栏的变化。是不是和画图软件的状态栏有点象。
下一步,我们添加String Table。再资源中添加,添加一个ID_INDICATOR_CAPS,标题自己定,在添加一个ID_INDICATOR_NUM,标题自己定。
再运行,我们按下num lock 或者 Caps lock键,看一下状态栏的变化,我们就建立了这样一个小程序。
下一篇,我们讲GDI,使用GDI来创建一个小的程序。
更多精彩
赞助商链接