winform的lable控件怎么向下滑动特效
2个回答
2015-03-24
展开全部
location。不过效果很差。。。试试gdi
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
使用winform动画API
追问
怎么使用呢。请大神赐教
追答
你是想实现字幕滚动的效果吗?
有两种实现方式:
第一种:使用计时器,每隔20ms就向左移动一个像素,判断lable的右边,如果右边距<0,说明lable已经移动了最左边,这个时候隐藏lable。将lable放回原坐标,重复此循环就实现了lable滚动字幕了
第二种使用动画api
public const Int32 AW_HOR_POSITIVE = 0x00000001;
public const Int32 AW_HOR_NEGATIVE = 0x00000002;
public const Int32 AW_VER_POSITIVE = 0x00000004;
public const Int32 AW_VER_NEGATIVE = 0x00000008;
public const Int32 AW_HIDE = 0x00010000;
public const Int32 AW_SLIDE = 0x00040000;
[DllImportAttribute("user32.dll")]
public static extern bool AnimateWindow(IntPtr hwnd, int dwTime, int dwFlags);
private void 滑动显示_Click(object sender, EventArgs e)
{
AnimateWindow(label5.Handle, 10000, AW_SLIDE | AW_HOR_NEGATIVE);
label5.Visible = true;
}
private void 滑动隐藏_Click(object sender, EventArgs e)
{
AnimateWindow(label5.Handle, 10000, AW_SLIDE | AW_HOR_NEGATIVE | AW_HIDE);
label5.Visible = false;
}
把lable文本设置长一点,效果比较明显,需要异步处理哈
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询