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

一、数字转化成字符

 

      如有 int a = 5

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

  1. int a=5;  
  2. int ch;  
  3. ch = a+'0';  
int a=5;
int ch;
ch = a+'0';


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

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

 

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

 

      

 

 

效果如图

      

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

 

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

      第二步 定义ICON资源句柄

            

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

 

      第三步 关联ICON句柄与资源

            

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

 

      第四步 SetIcon

           

[c-sharp] view plain copy print ?
  1. //在对话框映射类的InitDialog消息响应中添加代码SetIcon(m_hIcon,true);SetIcon(m_hIcon,false);  

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

          

[c-sharp] view plain copy print ?
  1. 原来是向窗口(窗口句柄为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()

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


 

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

 

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

 

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

 

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

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

 

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


 

五、产生随机数

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

  1. include <time.h>  
  2. include <stdlib.h>  
  3.   
  4. time_t t;  
  5. srand((unsigned)time(&t));  
  6. rand();  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值