我的技术规范

C/C++, Algorithm
随笔 - 11, 文章 - 7, 评论 - 1, 引用 - 0
数据加载中……

ATL 控件大小固定为图标的大小

STDMETHOD(SetExtent)(DWORD dwDrawAspect, SIZEL *psizel)
{
    BITMAP bitmap;

    HBITMAP hbmp = LoadBitmap( _AtlBaseModule.GetResourceInstance(), MAKEINTRESOURCE(IDB_WINSOCKIPV6) );
    GetObject ( hbmp, sizeof(bitmap), &bitmap) ;
    DeleteObject( hbmp);

    static const int HIMETRIC_INCH = 2540;

    HDC hdc = ::GetDC( NULL );
    psizel->cx = MulDiv( bitmap.bmWidth, HIMETRIC_INCH, GetDeviceCaps( hdc, LOGPIXELSX) );
    psizel->cy = MulDiv( bitmap.bmHeight, HIMETRIC_INCH, GetDeviceCaps( hdc, LOGPIXELSY) );
    ::ReleaseDC( NULL, hdc);

    return IOleObjectImpl<CWinSockIPv6>::SetExtent( dwDrawAspect,  psizel); 
}

posted on 2012-02-20 09:21 panchao 阅读(281) 评论(0)  编辑 收藏 引用 所属分类: utils


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理