# include“l_bitmap.h”
L_LTDLG_APIL_INTL_DlgGetEffect (hWndOwner pDlgParams)
显示对话框效果,得到的选项L_EfxPaintBitmap。
处理窗口拥有的对话框。
指针指向一个EFFECTDLGPARAMS结构与用户输入的值被更新,通过对话框。这个结构的成员,在调用这个函数之前,设置对话框初始值。
价值 | 意义 |
---|---|
SUCCESS_DLG_OK | “OK”按钮被按下,成功退出的对话框。 |
SUCCESS_DLG_CANCEL | 按下“取消”按钮,退出成功的对话框。 |
< 1 | 一个错误发生。指返回代码。 |
得到影响对话框。
必需的dll和库
L_INT ShowDlgGetEffectExample (HWND HWND, pBITMAPHANDLE pBitmap)
{
L_INT nRet;
EFFECTDLGPARAMS DlgParams;
L_UINT x;
HDC HDC;
矩形rcDst;
memset (&DlgParams 0运算符(EFFECTDLGPARAMS));
DlgParams。uStructSize =运算符(EFFECTDLGPARAMS);
DlgParams。pBitmap = pBitmap;
DlgParams。uEffect = EFX_EFFECT_ROLL4_T_R_T_L;
DlgParams。uGrain = 5;
DlgParams。uDelay = 50;
DlgParams。uMaxPass = 1;
DlgParams。bTransparent = FALSE;
DlgParams。crTransparent = RGB (0, 0, 0);
DlgParams。uWandWidth = 3;
DlgParams。crWand = RGB (255, 0, 0);
DlgParams。uDlgFlags = DLG_EFFECT_SHOW_PREVIEW |
DLG_EFFECT_DELAY |
DLG_EFFECT_GRAIN |
DLG_EFFECT_PASSES |
DLG_EFFECT_TRANSPARENT |
DLG_EFFECT_WAND |
DLG_EFFECT_CLASS_WIPE |
DLG_EFFECT_CLASS_WIPERECT |
DLG_EFFECT_CLASS_WIPECIRCLE |
DLG_EFFECT_CLASS_PUSH |
DLG_EFFECT_CLASS_SLIDE |
DLG_EFFECT_CLASS_ROLL |
DLG_EFFECT_CLASS_ROTATE |
DLG_EFFECT_CLASS_ZOOM |
DLG_EFFECT_CLASS_DRIP |
DLG_EFFECT_CLASS_BLIND |
DLG_EFFECT_CLASS_RANDOM |
DLG_EFFECT_CLASS_CHECK |
DLG_EFFECT_CLASS_BLOCKS |
DLG_EFFECT_CLASS_CIRCLE |
DLG_EFFECT_CLASS_ELLIPSE;
nRet = L_DlgInit (DLG_INIT_COLOR);
如果(& & nRet nRet ! =成功! = ERROR_DLG_ALREADYINITIATED)
返回nRet;
如果(SUCCESS_DLG_OK = = L_DlgGetEffect (hWnd, &DlgParams))
{
hDC = GetDC (hWnd);
GetClientRect (hWnd, &rcDst);
/ /注意:您还应该创建和选择一个调色板
为(x = 1;x < = DlgParams。uMaxPass;x + +)
{
nRet = L_EfxPaintBitmap (hDC),
DlgParams.pBitmap,
空,
空,
&rcDst,
空,
DlgParams.uEffect,
DlgParams.uGrain,
DlgParams.uDelay,
0,
0,
x,
DlgParams.uMaxPass,
DlgParams.bTransparent,
DlgParams.crTransparent,
DlgParams.uWandWidth,
DlgParams.crWand,
SRCCOPY);
如果(nRet ! =成功)
返回nRet;
}
ReleaseDC (hWnd, hDC);
}
nRet = L_DlgFree ();
如果(nRet ! =成功)
返回nRet;
返回成功;
}