关于window CE的众多问题

wangqingyun1 2011-11-30 01:26:53
由于问题会很棘手,教新手嘛,能留下一位会经常上网的大虾QQ吗,小弟在此感激不尽,有问题就找你!唔该!
...全文
60 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangqingyun1 2011-11-30
  • 打赏
  • 举报
回复
HBRUSH MyCreateHatchBrush (INT fnStyle, COLORREF clrref) {
BRUSHBMP brbmp;
BYTE *pBytes;
int i;
DWORD dwBits[6][2] = {
{0x000000ff,0x00000000}, {0x10101010,0x10101010},
{0x01020408,0x10204080}, {0x80402010,0x08040201},
{0x101010ff,0x10101010}, {0x81422418,0x18244281},
};
if ((fnStyle < 0) || (fnStyle > dim(dwBits)))
return 0;
memset (&brbmp, 0, sizeof (brbmp));
brbmp.bmi.biSize = sizeof (BITMAPINFOHEADER);
brbmp.bmi.biWidth = 8;
brbmp.bmi.biHeight = 8;
brbmp.bmi.biPlanes = 1;
brbmp.bmi.biBitCount = 1;
brbmp.bmi.biClrUsed = 3;
brbmp.bmi.biClrImportant = 2;

brbmp.dwPal[0] = PALETTERGB(0xff,0xff,0xff);
brbmp.dwPal[1] = PALETTERGB((BYTE)((clrref >> 16) & 0xff),
(BYTE)((clrref >> 8) & 0xff),
(BYTE)(clrref & 0xff));

pBytes = (BYTE *)&dwBits[fnStyle];
for (i = 0; i < 8; i++)
brbmp.bBits[i*4] = *pBytes++;

return CreateDIBPatternBrushPt (&brbmp, DIB_RGB_COLORS);
}

LRESULT DoPaintMain (HWND hWnd, UINT wMsg, WPARAM wParam,
LPARAM lParam) {
PAINTSTRUCT ps;
RECT rect;
HDC hdc;
POINT ptArray[6];
HBRUSH hBr, hOldBr;
TCHAR szText[128];
GetClientRect (hWnd, &rect);
hdc = BeginPaint (hWnd, &ps);

hBr = (HBRUSH) GetStockObject (DKGRAY_BRUSH);
hOldBr = (HBRUSH) SelectObject (hdc, hBr);
Ellipse (hdc, 10, 50, 90, 130);
SelectObject (hdc, hOldBr);

hBr = (HBRUSH) GetStockObject (LTGRAY_BRUSH);
hOldBr = (HBRUSH) SelectObject (hdc, hBr);
RoundRect (hdc, 95, 50, 150, 130, 30, 30);
SelectObject (hdc, hOldBr);

hBr = (HBRUSH) GetStockObject (WHITE_BRUSH);
hOldBr = (HBRUSH) SelectObject (hdc, hBr);
ptArray[0].x = 192;
ptArray[0].y = 50;
ptArray[1].x = 155;
ptArray[1].y = 75;
ptArray[2].x = 155;
ptArray[2].y = 105;
ptArray[3].x = 192;
ptArray[3].y = 130;
ptArray[4].x = 230;
ptArray[4].y = 105;
ptArray[5].x = 230;
ptArray[5].y = 75;
Polygon (hdc, ptArray, 6);
SelectObject (hdc, hOldBr);
hBr = (HBRUSH) MyCreateHatchBrush (HS_DIAGCROSS, RGB (0xff, 0xff, 0xff));
hOldBr = (HBRUSH) SelectObject (hdc, hBr);
Rectangle (hdc, 10, 145, 225, 210);
SelectObject (hdc, hOldBr);
DeleteObject (hBr);
SetBkMode (hdc, OPAQUE);
lstrcpy (szText, TEXT ("Opaque background"));
ExtTextOut (hdc, 20, 160, 0, NULL,
szText, lstrlen (szText), NULL);
SetBkMode (hdc, TRANSPARENT);
lstrcpy (szText, TEXT ("Transparent background"));
ExtTextOut (hdc, 20, 185, 0, NULL,
szText, lstrlen (szText), NULL);
EndPaint (hWnd, &ps);
return 0;
}

LRESULT DoDestroyMain (HWND hWnd, UINT wMsg, WPARAM wParam,
LPARAM lParam) {
PostQuitMessage (0);
return 0;
}
自定义了一个画刷,还画了几个图形,但不知道怎么把下面的矩形图案改成红色的。
91program 2011-11-30
  • 打赏
  • 举报
回复
有问题请来 CSDN,QQ 估计 LZ 不要想啦
northcan 2011-11-30
  • 打赏
  • 举报
回复
楼主的要求太高了,csdn估计会让楼主失望了。
woshi_ziyu 2011-11-30
  • 打赏
  • 举报
回复
都有什么问题呢

大家一起帮忙

1,075

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧