本文整理汇总了C#中IScreen.Blt方法的典型用法代码示例。如果您正苦于以下问题:C# IScreen.Blt方法的具体用法?C# IScreen.Blt怎么用?C# IScreen.Blt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IScreen
的用法示例。
在下文中一共展示了IScreen.Blt方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnPaint
public virtual void OnPaint(IScreen scr , ControlContext cc , int x , int y)
{
if (!visible) return ;
if (width == 0 || height == 0)
{
ITexture t0 = loader.GetTexture(0);
// ボタンサイズを取得しておき、これをマウスの判定矩形として利用する
if (t0 != null)
{
width = (int)t0.Width;
height = (int)t0.Height;
}
}
int mx, my;
if (cc.MouseInput != null)
cc.MouseInput.GetPos(out mx, out my);
else
mx = my = 0;
bool isHover =
(x <= mx) && (mx < x + width) &&
(y <= my) && (my < y + height);
bool isDown =
(cc.MouseInput != null) ? cc.MouseInput.IsPress(MouseInput.Button.Left) : false;
// 前フレームで、
// isHover状態でかつisDown
// 今回のフレームで
// isHover状態かつ、!isDown
// ならば、ボタンが押されたとしてボタンイベント発生。
isOnDown = false;
if (enable)
{
if (lastIsHover && lastIsDown && isHover && !isDown)
{
if ( OnClick != null )
{
OnClick(scr , cc);
}
isOnDown = true;
}
if (lastIsHover && !lastIsDown && isHover && isDown)
{
if (OnDown != null)
OnDown(scr, cc);
}
}
lastIsDown = isDown;
lastIsHover = isHover;
int pattern;
if (!enable)
pattern = 3;
else if (!isHover)
pattern = 0;
else if (isDown)
pattern = 1;
else
pattern = 2;
ITexture tex = loader.GetTexture(pattern + loaderOffset);
if ( tex != null )
{
if ( color != null )
{
scr.SetColor(color.Value);
scr.Blt(tex , x , y);
scr.ResetColor();
}
else
{
scr.Blt(tex , x , y);
}
}
}
示例2: OnPaint
public virtual void OnPaint(IScreen scr , ControlContext cc , int x , int y)
{
if (!visible) return ;
ITexture tex = loader.GetTexture(loaderOffset);
if ( tex != null )
{
if ( color != null )
{
scr.SetColor(color.Value);
scr.Blt(tex , x , y);
scr.ResetColor();
}
else
{
scr.Blt(tex , x , y);
}
}
}
示例3: OnPaint
public void OnPaint(IScreen scr , ControlContext cc , int x , int y)
{
if ( visible )
{
Update();
scr.BlendSrcAlpha(); // 背景が描画されてはいけないので…。
scr.Blt(texture , x , y);
}
}