mfc-MFC中,为什么我用DrawIcon函数无法显示自己的图标?

问题描述

MFC中,为什么我用DrawIcon函数无法显示自己的图标?

显示原本自带的icon没有任何问题,但是显示我自己引入的bitmap就不行,没有错误提示,只是运行时没有显示出来,图片是256位色ico图像。
代码如下:
HDC hdc=GetDC()->m_hDC;
HICON hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDB_BITMAP4));
DrawIcon(hdc,0,0,hIcon);

解决方案

你用的是什么方式制作的图标,VC++ 6.0最好用自带的图标编辑器制作。否则格式不兼容。

解决方案二:

VC对于这个ICON有自己的要求,你需要加载到vc的资源视图中编辑处理,然后才能加载

时间: 2025-01-28 03:47:41

mfc-MFC中,为什么我用DrawIcon函数无法显示自己的图标?的相关文章

MFC语言中的消息和函数之间的关系

问题描述 MFC语言中的消息和函数之间的关系 MFC中的消息和函数之间的关系是什么,比如OnSize这个是一个函数吧,怎么变成消息的? 解决方案 每个窗口有一个消息循环,mfc对消息循环做了包装,通过消息映射宏将收到指定的消息调用对应的虚函数处理,你写的onsize就是这样一个函数. 解决方案二: Onsize 是窗口大小发生了改变时调用的 3个消息分别是:WM_SIZE.WM_SIZING.WM_GETMINMAXINFO:分别对应相应的处理函数:OnSize.OnSizing.OnGetMi

mscomm控件 接收数据-VS2010 MFC 的MSCOMM 控件 的Get_Input()函数读取不到缓存中的数据

问题描述 VS2010 MFC 的MSCOMM 控件 的Get_Input()函数读取不到缓存中的数据 各位高手好,小弟在使用VS2010 MFC 的MSCOMM 控件时出现了一个问题: 就是在OnComm函数里调用的Get_Input()函数读取不到缓存中的数据,经过验证,发现当接收区缓存数据不为0时程序能触发OnComm消息,可是当程序运行到Get_Input()函数时,OnComm()函数仿佛就直接从Get_Input()函数返回了,后面的代码也没有运行.同时,由于Get_Input()函

mfc-关于MFC中SendRequest操作超时的函数

问题描述 关于MFC中SendRequest操作超时的函数 这个是我用HttpWatch抓到的的包,那个圈起来的字符粘到vc6中就成?了,怎么办? #include "AFXINET.H" INT CLOGIN::GetFile(const CString strUrl)//,const CString strSavePath) { // AfxMessageBox(strUrl); unsigned short nPort; //用于保存目标HTTP服务端口 CString strS

mfc-MFC中,如何使自己的图片可以被drawicon函数正常绘制

问题描述 MFC中,如何使自己的图片可以被drawicon函数正常绘制 如何让一张图片可以被drawicon函数正常绘制,使用VC6.0. 解决方案 把你的图片用windows画图打开, ctrl+a,ctrl+c复制掉剪贴板 用iconworkshop,新建一个图标,然后ctrl+v,保存.这样就可以转换成ico格式. 用VC++资源编辑器载入,然后作为资源.你就能用drawicon 解决方案二: 如果不是作为窗口图标,而是绘制在程序中,也可以直接绘制http://www.cnblogs.co

界面-如何使打开的其他程序或者文档在MFC窗口中显示,而不是新打开一个窗口

问题描述 如何使打开的其他程序或者文档在MFC窗口中显示,而不是新打开一个窗口 我想在程序界面中指定一个区域,用于显示被打开的其他程序或者文档的界面.可是我用ShellExecute函数打开指定的那个文档和程序的时候,总是会再启动另一个窗口,效果就像是直接点击打开那个文件一样. 解决方案 将mfc窗口设置为其它程序的父窗口 解决方案二: 参考:程序只允许打开唯一实例且所有关联文档都在同一实例内打开的一揽子解决办法http://blog.csdn.net/IfI/article/details/1

【转载】SDL2.0在mfc窗口中显示yuv的一种方法

DWORD ThreadFun(){    //用mfc窗口句柄创建一个sdl window    SDL_Window * pWindow = SDL_CreateWindowFrom( (void *)( GetDlgItem(IDC_STATIC1)->GetSafeHwnd() ) );     SDL_Rect sdlRT;    sdlRT.h = 288;    sdlRT.w = 352;    sdlRT.x = 0;    sdlRT.y = 0;     SDL_Rect

MFC编程中,如何避免按键冲突

问题描述 MFC编程中,如何避免按键冲突 不悬赏会不会有人回答... 在学雾央的MFC游戏开发的时候遇到的一些问题<MFC游戏开发>笔记四 键盘响应和鼠标响应 在评论区也有人提到,就是"一旦按住某个按键 图片(角色)并不是匀速运动的,而是先停一下,然后再匀速运动的 " 另外,在想改变方向的时候,也会有卡顿.而且不能按组合键.比如上下左右是wsad的时候,想右后再右上运动,一般操作来说是d按住,然后按W,可是现在在向右运动途中按W的话,会直接往上移动一格,停一会儿然后继续往上

MFC对话框中,如何让正在循环绘图的窗口上可以响应其他控件

问题描述 MFC对话框中,如何让正在循环绘图的窗口上可以响应其他控件 我需要编写一个程序,在对话框上面有一个图片控件可以在不断地以固定刷新率绘图,然后在该对话框上有一个按钮可以终止图片控件的绘图行为.但是在实际中,窗口一旦循环绘图以后就不受控制了,应该怎么办? 解决方案 非常感谢,已经通过别的方式解决了, 解决方案二: http://blog.csdn.net/cometnet/article/details/8278383 把这个doevents函数放在你的绘图循环中 解决方案三: 用一个定时

Win32 DLL和MFC DLL 中封装对话框

现在最常看见的关于DLL的问题就是如何在DLL中使用对话框,这是一个很普遍的关于如何在DLL中使用资源的问题.这里我们从Win32   DLL和MFC   DLL两个方面来分析并解决这个问题.           1.Win32   DLL               在Win32   DLL中使用对话框很简单,你只需要在你的DLL中添加对话框资源,而且可以在对话框上面设置你所需要的控件.然后使用DialogBox或者CreateDialog这两个函数(或相同作用的其它函数)来创建对话框,并定义