《Windows程序设计》之位图操作

1、在内存中创建位图,并在位图中写入文字

		hdc=GetDC(hwnd);
		//创建内存设备上下文
		hdcMem=CreateCompatibleDC(hdc);
		//计算指定的正文字符串的高度和宽度
		GetTextExtentPoint32(hdc,szText,lstrlen(szText),&size);
		cxBitmap=size.cx;
		cyBitmap=size.cy;
		/*cxBitmap=cxBitmap*2;
		cyBitmap=cyBitmap*2;*/
		//测试出来背景是黑色的,可以加入上面两行测试
		//创建一个大小为cxBitmap*cyBitmap位图
		hBitmap=CreateCompatibleBitmap(hdc,cxBitmap,cyBitmap);
		ReleaseDC(hwnd,hdc);
		//选入设备环境中
		SelectObject(hdcMem,hBitmap);
		//在内存的位图中输入要输入的文字,字体是黑色的,背景是白色的
		TextOut(hdcMem,0,0,szText,lstrlen(szText));

2、菜单栏操作的一些方法

		switch(LOWORD(wParam))
		{
		case IDM_BIG:
		case IDM_SMALL:
			//这个地方一开始没看懂,有点别扭
			//iSize一开始被赋值为IDM_BIG,在点击IDM_SMALL后,iSize并没有改变,还是IDM_BIG
			//取消IDM_BIG的选中状态
			CheckMenuItem(hMenu,iSize,MF_UNCHECKED);
			//得到点击是哪一项
			iSize=LOWORD(wParam);
			//把这一项设置为选中状态,此时iSize就是选中项,直到再次执行iSize=LOWORD(wParam)前
			CheckMenuItem(hMenu,iSize,MF_CHECKED);
			//刷新
			InvalidateRect(hwnd,NULL,TRUE);
			break;
		}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值