一些编程小技巧----不断更新中

一、数字转化成字符

 

      如有 int a = 5

      现在要把 5变成 '5' 放入ch中

int a=5;
int ch;
ch = a+'0';


二、给对话框标题栏 添加图标

      要是给一个基于对话框的程序的主窗体,就比较简单了

 

     只要将原来的IDR_MAINFRAME 删除,添加一个ICON 资源,将其命名为 IDR_MAINFRAME,即可。

 

      

 

 

效果如图

      

      若是给我们自己添加的对话框添加图标,方法也很简单

 

      第一步 添加ICON资源    并命名,如IDI_MY_PIC

      第二步 定义ICON资源句柄

             //在对话框映射的类的.h文件中,添加语句HICON m_hIcon;

 

      第三步 关联ICON句柄与资源

            

//假设我们的project名成为MyIcon
//在对话框的映射类的构造函数中,添加语句
m_hIcon = ((CMyIconApp*)AfxGetApp())->LoadIcon(IDI_MY_PIC);

 

      第四步 SetIcon

            //在对话框映射类的InitDialog消息响应中添加代码SetIcon(m_hIcon,true);SetIcon(m_hIcon,false);

           对于这两句代码的作用,网友祁超在其网易博客中表示:

           原来是向窗口(窗口句柄为m_hWnd)发送了一个WM_SETICON消息,再呼出MSDN,对于这个消息,MSND上有比较详细的解释。如消息名SETICON所揭示的那样,发送这个消息给窗口,是为了让这个窗口和大图标(large icon)或者小图标(small icon)关联。在用户按ALT+TAB键切换窗口时,显示的就是大图标,小图标就是对话框窗口标题栏上的那个图标。同一的参数m_hIcon, 却带有TRUE或者FALSE,这是颇让人感到疑惑的地方。说白了其实也是很简单的事情,我们在用VC的资源编辑器编辑图标(icon)时,不是可以选择不同大小的图片来进行编辑吗?这些大小不同的图,最终都存入到同一个.ico文件中去了。所以m_hIcon指向的是一组图标,第二个参数(TRUE或者 FALSE)就是用来指定这一组图标中某一类大小的图标的,参数值为TRUE时,指明使用大图标(32*32相素),FALSE指明使用小图标 (16*16像素)。当然,一般程序中我们并没有对WM_SETICON消息进行处理,所以这些设置大小图标的事情,都被默认的消息处理函数DefWindowProc给做掉了。

 

 

三、C++ 文件包含的头文件,其内部实现函数结尾 可以 加 ‘;’也可以不加';'

 

      譬如我们新建了C++ 头文件 ‘test.h’

      其内部有实现函数Print()

//test.h
#include <stdio.h>
void Print(){
    printf("Hello HeadFile/n");
};       //这里的分号可以加,也可以不加         //目前我测试是加不加都正确,具体区别,后续在论


 

四、由 ICON 图标的ID获得其句柄的一种取巧方法

 

      遇到过很多次,这个问题,可是总解决不了,无论是上网搜资料,还是在QQ技术群里问,没有得到结果

 

      苦恼很久,想到了一个比较巧的方法

 

       比如我们知道一个ICON资源的ID为 IDI_ICON1,

       我们这样就可以得到其句柄m_hmyIcon

 

//App类有一个LoadIcon 函数,用来设定程序的标题的图标
//我们可以先借助这个函数,把我们想得到的句柄得到
//在给它把原来的程序图标还原回去
m_hmyIcon = AfxGetApp()->LoadIcon(IDI_ICON1);  //获得
m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);//还原


 

五、产生随机数

srand rand 包含在 stdlib.h 头文件中

include <time.h>
include <stdlib.h>

time_t t;
srand((unsigned)time(&t));
rand();


你可能感兴趣的:(编程,c,qq,测试,include,网易)