2)添加光标和图标 1)首先是昨天的代码进行展示: 2)然后  我们进行添加光标 ,就是修改下面的代码: 4)修改你的图标: 5)总的代码展示:                   

  

 1 #include<Windows.h>
 2 #include"resource.h"
 3 //这个叫  窗口消息处理函数
 4 LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 5 {
 6     
 7     return ::DefWindowProc( hWnd, uMsg, wParam, lParam);
 8 }
 9 
10 
11 int CALLBACK WinMain(HINSTANCE hIstance,
12                      HINSTANCE hPreInstance,
13                      LPSTR pCmdLine,
14                      int nCmdShow)
15 {
16             
17     HBRUSH hBrush=::CreateSolidBrush(RGB(0,0,255));
18             
19     
20     //1.设计---->就是给WNDCLASSEX结构体初始化(结构体有12个)
21             WNDCLASSEX wndclass;
22             wndclass.cbClsExtra=0;
23             wndclass.cbWndExtra=0;//这两个是确定是否要分配额外的空间
24             wndclass.cbSize=sizeof(WNDCLASSEX);
25             wndclass.hbrBackground=hBrush;
26             wndclass.hCursor=NULL;//光标
27             wndclass.hIcon=NULL;//窗口图标
28             wndclass.hIconSm=NULL;//窗口左上的图标
29             wndclass.hInstance=hIstance;
30             wndclass.lpfnWndProc=WndProc;
31             wndclass.lpszClassName="wangchao";
32             wndclass.lpszMenuName=NULL;
33             wndclass.style=CS_HREDRAW|CS_VREDRAW;
34 
35     //2.注册(将上面的那个窗口给注册上)
36             if(::RegisterClassEx(&wndclass)==FALSE)
37             {
38                 ::MessageBox(NULL,"dhsakfljadsf","提示",MB_OK);
39                 
40                 return 0;
41             }
42     //3.创建
43                     
44             HWND hWnd=::CreateWindow("wangchao","xiao_hua",WS_OVERLAPPEDWINDOW,100,0,500,500,NULL,NULL,hIstance,NULL);
45             
46         if(hWnd==NULL)
47         {
48             ::MessageBox(NULL,"创建失败","提示",MB_OK);
49             return 0;
50         }
51     //4.显式
52             //这个SW_SHOW就是一个宏,它就是ShowWindow-->SW,SW_SHOW显式,SW_HIDE隐藏
53             //第一个变量是显式哪一个窗口,就是上面的我们创建的那个hWnd
54         ::ShowWindow(hWnd,SW_SHOW);
55     //5.消息循环
56         //定义一个消息句柄
57             MSG msg;
58             //函数的第一个变量是 取到的什么消息,第二个是这个消息是来自哪一个窗口(如果给0,说的是所有窗口的消息)
59             //最后那个是消息的范围,0,0是所有的范围,要是写10  20  就是取第10个到第20个消息
60             while(::GetMessage(&msg,0,0,0))
61         {
62             //第一步先翻译
63             ::TranslateMessage(&msg);
64             //第二部分发
65             ::DispatchMessageA(&msg);
66 
67         }
68 
69 
70     ::DeleteObject(hBrush);
71 }

2)然后  我们进行添加光标 ,就是修改下面的代码:

      2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

    首先是修改光标,光标需要加载(什么加载不加载的,其实就是贴图,那么这个光标的图片来自哪里,步骤:       

     (1)点开

              2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

      (2)然后,右面(或者左面)就出现:

              2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

      (3)然后出现:

              2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

     (4)然后点击  “Cursor”----->新建

              2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

       (5)在左侧(或者右侧)就出现resource.h头文件,

    2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

       (6)然后,我修改我的WinMaincpp.cpp 光标那里的代码:

                2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

        直接放到这里不行,因为LoadCursor那个函数的第二个形参是 字符串,所以 看你的帮助文档:

                                          ---->点着这个LoadCursor函数-->按下F1---->找到了下面的内容:

      2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

              哎,总之是,需要你将那个游标的ID(整型)转定义一下  用MAKEINTRESOURCE  

      2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

4)修改你的图标:

  2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  

~~~~~~~~~~你的resource.h文件内容也发生了变化:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

                            2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~然后修改你的WinMaincpp.cpp的代码~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1 wndclass.hIcon=::LoadIcon(hIstance,MAKEINTRESOURCE(IDI_ICON1));//窗口图标

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~结果展示:~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

                             2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

    

 

5)总的代码展示:  

        2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

同时加了消息的一个处理过程:

 2)添加光标和图标
1)首先是昨天的代码进行展示:
2)然后  我们进行添加光标 ,就是修改下面的代码:
4)修改你的图标:
5)总的代码展示:  
        
       

 1 #include<Windows.h>
 2 #include"resource.h"
 3 //这个叫  窗口消息处理函数
 4 LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
 5 {
 6     switch(uMsg)
 7     {
 8     case WM_CLOSE://点那个×,窗口关闭
 9         ::PostQuitMessage(0);//消息推出
10         break;
11     }
12     return ::DefWindowProc( hWnd, uMsg, wParam, lParam);
13 }
14 
15 
16 int CALLBACK WinMain(HINSTANCE hIstance,
17                      HINSTANCE hPreInstance,
18                      LPSTR pCmdLine,
19                      int nCmdShow)
20 {
21             
22     HBRUSH hBrush=::CreateSolidBrush(RGB(0,0,255));
23             
24     
25     //1.设计---->就是给WNDCLASSEX结构体初始化(结构体有12个)
26             WNDCLASSEX wndclass;
27             wndclass.cbClsExtra=0;
28             wndclass.cbWndExtra=0;//这两个是确定是否要分配额外的空间
29             wndclass.cbSize=sizeof(WNDCLASSEX);
30             wndclass.hbrBackground=hBrush;
31             wndclass.hCursor=::LoadCursor(hIstance,MAKEINTRESOURCE (IDC_CURSOR1));//光标
32             //因为上面的那个LoadCUrsor是需要字符串,但是那个IDC_CURSOR1是一个整型数字,所以  需要用那个宏给转定义一下
33             wndclass.hIcon=::LoadIcon(hIstance,MAKEINTRESOURCE(IDI_ICON1));//窗口图标
34             wndclass.hIconSm=NULL;//窗口左上的图标
35             wndclass.hInstance=hIstance;
36             wndclass.lpfnWndProc=WndProc;
37             wndclass.lpszClassName="wangchao";
38             wndclass.lpszMenuName=NULL;
39             wndclass.style=CS_HREDRAW|CS_VREDRAW;
40 
41     //2.注册(将上面的那个窗口给注册上)
42             if(::RegisterClassEx(&wndclass)==FALSE)
43             {
44                 ::MessageBox(NULL,"dhsakfljadsf","提示",MB_OK);
45                 
46                 return 0;
47             }
48     //3.创建
49                     
50             HWND hWnd=::CreateWindow("wangchao","xiao_hua",WS_OVERLAPPEDWINDOW,100,0,500,500,NULL,NULL,hIstance,NULL);
51             
52         if(hWnd==NULL)
53         {
54             ::MessageBox(NULL,"创建失败","提示",MB_OK);
55             return 0;
56         }
57     //4.显式
58             //这个SW_SHOW就是一个宏,它就是ShowWindow-->SW,SW_SHOW显式,SW_HIDE隐藏
59             //第一个变量是显式哪一个窗口,就是上面的我们创建的那个hWnd
60         ::ShowWindow(hWnd,SW_SHOW);
61     //5.消息循环
62         //定义一个消息句柄
63             MSG msg;
64             //函数的第一个变量是 取到的什么消息,第二个是这个消息是来自哪一个窗口(如果给0,说的是所有窗口的消息)
65             //最后那个是消息的范围,0,0是所有的范围,要是写10  20  就是取第10个到第20个消息
66             while(::GetMessage(&msg,0,0,0))
67         {
68             //第一步先翻译
69             ::TranslateMessage(&msg);
70             //第二部分发
71             ::DispatchMessageA(&msg);
72 
73         }
74 
75 
76     ::DeleteObject(hBrush);
77 }