[英]Effect To Show Panel in C#.net
我想在C#.net的Windows窗体中使用面板。 我将此控件的可见属性设置为false,然后单击按钮,显示面板。 我想以某种效果展示一个面板。
请帮我
您让我们猜测您正在寻找什么样的效果。 我将随意选择折叠和扩展效果。 它需要一个Timer,您可以在Tick事件处理程序中实现效果。 这是一个示例,它需要一个面板,计时器和按钮:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
timer1.Interval = 16;
timer1.Tick += new EventHandler(timer1_Tick);
panel1.BackColor = Color.Aqua;
mWidth = panel1.Width;
}
int mDir = 0;
int mWidth;
void timer1_Tick(object sender, EventArgs e) {
int width = panel1.Width + mDir;
if (width >= mWidth) {
width = mWidth;
timer1.Enabled = false;
}
else if (width < Math.Abs(mDir)) {
width = 0;
timer1.Enabled = false;
panel1.Visible = false;
}
panel1.Width = width;
}
private void button1_Click(object sender, EventArgs e) {
mDir = panel1.Visible ? -5 : 5;
panel1.Visible = true;
timer1.Enabled = true;
}
}
我能想到的唯一效果是使用计时器扩展面板并逐步更改面板的大小。
我建议您使用WPF代替Winforms,因为它非常擅长执行此类操作。 您可以设置控件的所有属性的动画,例如位置,大小,alpha。 请检查有关WPF动画的这些文章
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.