SkinPlusPlus Dll Method & COM Interface

http://www.uipower.com

DrawSkinImage

在给定的HDC,画位图

-------DLL Method-------
 
BOOL sppDrawSkinImage(
  HDC hdc,                         //目标DC
  RECT rect,                       //绘制区域
  LPCTSTR lpszObjName,             //要绘制皮肤图片名称
  BOOL bStretchAll,                //是否拉伸
  int nTopHeight = 0,              //不被拉伸的顶高
  int nBottomHeight = 0,           //不被拉伸的底高
  int nLeftWidth = 0,              //不被拉伸的左宽
  int nRightWidth = 0,             //不被拉伸的右宽
  COLORREF clrTrans = -1,          //透明色
  BOOL bTrans = FALSE              //是否透明
);
 
-------Com Interface-------
 
VARIANT_BOOL DrawSkinImage(
  _DrawImage*  pDrawImage          //绘制结构
);
 
 

  数:

hdc

[in]目标DC

目标DC可以是CPaintDCCWindowDCCClientDCCDC,也可以是GetDC()、GetWindowDC()获得的DC

rect

[in]绘制矩形区域

位图被绘制到DC的目标区域。

lpszObjName

[in]要绘制皮肤图片名称

该图片是通过Skin++Builder加入到皮肤文件中的,而不是用户从程序外部调用的图片。

这里提供了用户可以自己绘制皮肤资源图片的一种能力。在很多自定义控件的应用中需要用到这样的功能。

DrawSkinBitmap与不同,DrawSkinImage可以绘制所有Skin++支持的所有的图片格式(BMP,TGA,PNG,ICON,ANI)

bStretchAll

[in]是否拉伸

如果设置为TrueSkin++将对可拉伸区域进行拉伸操作,如果设置为FalseSkin++将对可拉伸区域进行平铺操作。

在很多情况下,如果对整个图片进行拉伸将会导致图片失真,用户可以设置图片4个边线不被拉伸的区域,这样绘制

出来的效果要好很多,不会有明显的失真感觉。

nTopHeight

[in]不被拉伸的顶高

顶部将有nTopHeigh 像素不被拉伸

nBottomHeight

[in]不被拉伸的底高

底部将有nBottomHeight 像素不被拉伸

nLeftWidth

[in]不被拉伸的左宽

左边将有nLeftWidth 像素不被拉伸

nRightWidth

[in]不被拉伸的右宽

右边将有nRightWidth 像素不被拉伸

clrTrans

[in]透明色,默认值为-1

如果位图是异形可以使用透明色进行透明绘制

bTrans

[in] 是否透明

            如果设置为TrueSkin++将采用clrTrans颜色对位图进行透明绘制,

            如果设置为False,即使对clrTrans设置了透明色,Skin++也将不会对位图进行透明绘制。

pDrawImage

[in] 绘制结构

            COM 应用程序可以通过填充_DrawImage结构对图片进行绘制。

返回值

             如果执行成功返回True,如果执行失败返回False.

  意:

            如果用户需要在程序中编写自定义控件,可以将图片资源加入皮肤文件中,然后通过本函数进行图片的绘制。

            这样做的好处是可以对图片进行统一管理,同时可以利用Skin++的绘图功能进行绘图。

            另外,自定义控件还可以随皮肤的更换而实现风格的变换,实现界面的一致性。

      子:

               V C:

                              CPaintDC dc(this);

                              sppDrawSkinImage(dc.m_hDC,CRect(0,0,100,100),_T(“MyTestPicture.bmp”) ,TRUE,10,10,10,10,RGB(255,0,255),TRUE);

                               。。。。。。

  求:

支持的操作系统:Windows 95/98/Me/ NT/2000/XP/2003/Vista

Skin++版本    Skin++ 标准版 不支持,,Skin++ 企业版2.0及以上版本支持,Skin++源码版2.0及以上版本支持

C++ 头文件    SkinPPInc.h SkinPPWTL.h描述.

DLL 宿主文件   : SkinPPWTL.dll,SkinPlusPlus.dll,SkinPPPowerBuilder,SkinPPBorland,SkinPPBCB,SkinPPE.

COM 宿主文件 : SkinPPDotNet.dll,SkinPPVB.dll,SkinPPDelphiNet.dll

  他:

               DrawSkinBitmap _DrawImage

               Skin++ DLL Methods & COM Interfaces List

 

Copyright@2004-2007 上海勇进软件有限公司,保留所有权利。
如果您对帮助系统有任何建议,可以直接发邮件到support@uipower.com
Visual Studio,
Visual Studio logo 是微软公司在美国或在其他国家的注册商标。

Converted from CHM to HTML with chm2web Standard 2.7 (unicode)