我有一个表格和几个标签。我正在创建一个带有所述表单的屏幕保护程序。到目前为止,我已经能够以不同的间隔显示文本标签。
但是,我想进一步说明问题。我希望从右上方或左上方的顶部或底部滚动文本。我可以直接用C#做这个吗?怎么样?
我希望得到一个有用的答案。感谢。
答案 0 :(得分:0)
您希望文本在表单上“飞行”吗?如果是,为什么不改变标签位置?
答案 1 :(得分:0)
没有看到类似的东西......但是如果你知道什么是Expression Blend,你可以制作自己的元素样式(颜色,形式,大小,动画)。你可以尝试在那里实现它......
答案 2 :(得分:0)
创建一个间隔较小的计时器,只需使用:
//Move right:
label1.Location = new Point(label1.Location.X + 1, label1.Location.Y);
//Move left:
label1.Location = new Point(label1.Location.X - 1, label1.Location.Y);
也许是这样的:
private void timer1_Tick(object sender, EventArgs e)
{
if (label1.Location.X <= Width)
label1.Location = new Point(label1.Location.X + 1, label1.Location.Y);
else
label1.Location = new Point(0, label1.Location.Y);
}
答案 3 :(得分:0)
您和其他想要做类似事情的人可以简单地使用以下框架:
WinForm动画库[.Net3.5 +]
一个简单的库,用于在.Net WinForm(.Net中)中设置控件/值的动画 3.5及以后)。基于关键帧(路径)并可完全自定义。
https://falahati.github.io/WinFormAnimation/
new Animator2D(
new Path2D(new Float2D(-100, -100), lbl_label.Location.ToFloat2D(), 500))
.Play(lbl_label, Animator2D.KnownProperties.Location);
这会将lbl_label
标签从-100,-100滑动到500毫秒内的第一个位置。