尽可能多的开发人员,我尝试在按钮上加载不同状态的按钮(正常,悬停和单击)。 我开始包括与尺寸64×64visual C++在presubclass按钮中绘制高质量的图标
我有大小35x35定义我自己的控制按钮图标:
CONTROL "INV",IDC_SENSINV,"Button",BS_OWNERDRAW | WS_TABSTOP,75,106,35,35
我定义了一个presubclass按钮,并在DRAWITEM功能,我得到RECT,加载图标,图标抽奖:
void CimageButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
{
CDC* pDC = CDC::FromHandle(lpDrawItemStruct->hDC);
CRect rect = lpDrawItemStruct->rcItem; //rect of 53x57 ??
UINT state = lpDrawItemStruct->itemState;
hIcon = (HICON)LoadIcon(GetModuleHandle(NULL), MAKEINTRESOURCE(i_iconeNormal)
DrawIconEx(*pDC,
0,
2,
(HICON)hIcon,
53,
53,
0, NULL, DI_NORMAL);
}
我的问题是drawned图标的质量是不好的,我不明白为什么
- 我的按钮的大小35x35和我得到的53x57
- 一个矩形,其大小应的图标(小于或大于按钮更大)
- 是什么,以获得最佳drawned图标质量的方式
我希望能够清楚,谢谢提前帮助。
你最好使用位图为你的按钮图像。 – rrirower