如何使用c#显示和隐藏动画窗口函数的滑动效果?

如何使用c#显示和隐藏动画窗口函数的滑动效果?,c#,winforms,C#,Winforms,我正在为我的应用程序使用windows窗体。我正在面板上单击加载另一个表单。现在我想展示窗体打开和关闭时的滑动效果。我可以通过重载窗体的OnLoad事件,在窗体从右向左打开时添加负滑动效果。但我无法使用函数隐藏具有正面幻灯片效果的窗体。有没有办法做到这一点 这是我用来显示表单的内容: protected override void OnLoad(System.EventArgs e) { NativeMethods.AnimateWindow(this.Handle, 500,

我正在为我的应用程序使用windows窗体。我正在面板上单击加载另一个表单。现在我想展示窗体打开和关闭时的滑动效果。我可以通过重载窗体的OnLoad事件,在窗体从右向左打开时添加负滑动效果。但我无法使用函数隐藏具有正面幻灯片效果的窗体。有没有办法做到这一点

这是我用来显示表单的内容:

protected override void OnLoad(System.EventArgs e)
{
  NativeMethods.AnimateWindow(this.Handle, 500, 
                  AW_ACTIVATE | AW_SLIDE | AW_HOR_NEGATIVE);

  base.OnLoad(e);    
}
为什么不简单地使用属性呢

增加或减少其相对值以实现所需的滑动动画效果

为什么不简单地使用属性呢

增加或减少其相对值以实现所需的滑动动画效果

库可能可以执行您想要的操作

来自站点的示例代码,在您的情况下,可以将其放置在
关闭事件中

Transition t = new Transition(new TransitionType_EaseInEaseOut(2000));
t.add(pictureBox1, "Left", 300);
t.add(pictureBox1, "Top", 200);
t.run();
完成动画后,可以使用
TransitionCompletedEvent
事件隐藏表单。(或者可以设置窗体的
不透明度
属性的动画)

公共事件事件处理程序TransitionOnCompletedEvent;
库可能可以执行您想要的操作

来自站点的示例代码,在您的情况下,可以将其放置在
关闭事件中

Transition t = new Transition(new TransitionType_EaseInEaseOut(2000));
t.add(pictureBox1, "Left", 300);
t.add(pictureBox1, "Top", 200);
t.run();
完成动画后,可以使用
TransitionCompletedEvent
事件隐藏表单。(或者可以设置窗体的
不透明度
属性的动画)

公共事件事件处理程序TransitionOnCompletedEvent;

使用现有模式-OnClosing+AW\u HIDE以相反的方式进行操作

protected override void OnClosing(CancelEventArgs e)
{
   AnimateWindow(this.Handle, 500, AW_ACTIVATE | AW_SLIDE | AW_HOR_NEGATIVE | AW_HIDE);

   base.OnClosing(e);
}

使用您现有的模式-OnClosing+AW_HIDE则相反

protected override void OnClosing(CancelEventArgs e)
{
   AnimateWindow(this.Handle, 500, AW_ACTIVATE | AW_SLIDE | AW_HOR_NEGATIVE | AW_HIDE);

   base.OnClosing(e);
}

能否显示用于隐藏表单的代码并描述调用表单时发生的情况?能否显示用于隐藏表单的代码并描述调用表单时发生的情况?