ranjio_z 2016-01-08 06:42 采纳率: 0%
浏览 1538
已结题

为什么gdiplus DrawImage可以看到效果,而DrawRectangle看不到效果

如题,我自定义了一个CRgnButton,在DrawItem方法中调用gdiplus画上了按钮的一张图片,现在想给按钮加个选中的边框。但是,Graphics的DrawImage方法起作用了,能看到图片的效果,但是Graphicse的Rectangle方法为什么画不出矩形框?
if (pImg != NULL){
Graphics g(lpDrawItemStruct->hDC);
g.SetClip(trgn, CombineModeReplace);
g.DrawImage(pImg, RectF((REAL)0, (REAL)0, (REAL)pImg->GetWidth(), (REAL)pImg->GetHeight()));
if (m_noDownAnimation == false){
g.DrawImage(pImg, RectF((REAL)m_imgOffset.X, (REAL)m_imgOffset.Y, (REAL)pImg->GetWidth(), (REAL)pImg->GetHeight()));
}
g.Flush();
SolidBrush brush(RGB(255, 255, 255));
Pen p(RGB(255, 255, 255));
p.SetWidth(2);
p.SetDashStyle(DashStyleDot);
g.DrawRectangle(&p, RectF((REAL)10, (REAL)10, (REAL)(pImg->GetWidth()-10), (REAL)(pImg->GetHeight()-10)));
g.Flush();
g.ReleaseHDC(lpDrawItemStruct->hDC);

  • 写回答

1条回答 默认 最新

  • devmiao 2016-01-08 19:00
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 shape_predictor_68_face_landmarks.dat
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料