c语言图片位图 为什么无法绘制按钮图片

C语言 码拜 9年前 (2015-05-12) 1172次浏览 0个评论
int LoadResources(void)
{
	DWORD a;
	char b[10];
	button_lmage = (HANDLE) LoadImage(NULL,"img\cButtona.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
	a = GetLastError();
	if(button_lmage == NULL)
	{
		itoa((int)a,b,10);
		MessageBox(NULL,b,TEXT("提示:"),0);
		return 0;
	}

	SendMessage(HWND_Button[0], BM_SETIMAGE, (WPARAM)BS_BITMAP, (LPARAM)button_lmage);

	return 0;
}
// HANDLE button_lmage  这是一个全局变量

HWND CreateButton(char* text,int x,int y,int w,int h,HWND zwnd,HMENU ID)//创建 Button  返回窗口句柄
{
	HWND Q = CreateWindow ("BUTTON",text,
		WS_CHILD | WS_VISIBLE | BS_BITMAP,//样式顺序 子窗口 可显示  自绘样式
		x,y,w,h,//x y 宽高 客户区位置  大小
		zwnd,ID,//子窗口ID
		(HINSTANCE) GetWindowLong(zwnd, GWL_HINSTANCE),NULL);
	return Q;
}

那么问题来了 为什么发送消息时报错 87 说参数不正确 ,真是日了狗了..

40分
(WPARAM)IMAGE_BITMAP
引用 1 楼 fly_dragon_fly 的回复:

(WPARAM)IMAGE_BITMAP

果然可以了 为什么不能是BS_BITMAP呢?  是不是我加载的时候定义成IMAGE_BITMAP 了?


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明c语言图片位图 为什么无法绘制按钮图片
喜欢 (0)
[1034331897@qq.com]
分享 (0)

文章评论已关闭!