设为首页 加入收藏

TOP

滑鼠(三十八)
2010-12-30 21:11:57 来源: 作者: 【 】 浏览:27876
Tags:滑鼠
ptBoxBeg = ptBeg ;
ptBoxEnd.x = LOWORD (lParam) ;
ptBoxEnd.y = HIWORD (lParam) ;

SetCursor (LoadCursor (NULL, IDC_ARROW)) ;
fBlocking = FALSE ;
fValidBox = TRUE ;

InvalidateRect (hwnd, NULL, TRUE) ;
}
return 0 ;

case WM_CHAR :
if (fBlocking & wParam == '\x1B') // i.e., Escape
{
DrawBoxOutline (hwnd, ptBeg, ptEnd) ;

SetCursor (LoadCursor (NULL, IDC_ARROW)) ;

fBlocking = FALSE ;
}
return 0 ;

case WM_PAINT :
hdc = BeginPaint (hwnd, &ps) ;

if (fValidBox)
{
SelectObject (hdc, GetStockObject (BLACK_BRUSH)) ;
Rectangle ( hdc, ptBoxBeg.x, ptBoxBeg.y,
ptBoxEnd.x, ptBoxEnd.y) ;
}

if (fBlocking)
{
SetROP2 (hdc, R2_NOT) ;
SelectObject (hdc, GetStockObject (NULL_BRUSH)) ;
Rectangle (hdc, ptBeg.x, ptBeg.y, ptEnd.x, ptEnd.y) ;
}

EndPaint (hwnd, &ps) ;
return 0 ;

case WM_DESTROY :
PostQuitMessage (0) ;
return 0 ;
}
return DefWindowProc (hwnd, message, wParam, lParam) ;
}

此程式展示了一些,它可以实作在Windows的「画图」程式中的东西。由按下滑鼠左键开始确定矩形的一角,然後拖动滑鼠。程式将画一个矩形的轮廓,其相对位置是滑鼠目前的位置。当您释放滑鼠後,程式将填入这个矩形。图7-4显示了一个已经画完的矩形和另一个正在画的矩形。


 

首页 上一页 35 36 37 38 39 40 41 下一页 尾页 38/50/50
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇计时器 下一篇键盘

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: