void CTestButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
{
CDC cdc;
cdc.Attach(lpDrawItemStruct->hDC);
CRgn   rgnA;
VERIFY(rgnA.CreateRoundRectRgn( 0, 0, 30, 30, 30, 30 ));
CBrush brA;
VERIFY(brA.CreateSolidBrush( RGB(255, 0, 0) ));  
VERIFY(cdc.FillRgn( &rgnA, &brA));      // rgnA Red Filled
}
可以运行成功,
但如果改成下面这样void CTestButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
{
CDC cdc;
cdc.Attach(lpDrawItemStruct->hDC);
CRgn   rgnA;
HRGN hrgn = CreateRoundRectRgn(0,0,30,30, 30, 30);
rgnA.FromHandle(hrgn);
CBrush brA;
VERIFY(brA.CreateSolidBrush( RGB(255, 0, 0) ));  
VERIFY(cdc.FillRgn( &rgnA, &brA));      // rgnA Red Filled
}
就不能正常运行。
问题应该出在fillrgn这
请问这是怎么弄回事?