我正在为Rhino开发一个插件,当我运行命令启动插件时,我执行以下操作。它会创建一个启动表单,上面有一个计时器,2秒后我会加载另一个表单。
如果我错误地再次单击插件图标,它会创建另一个spash表单实例,再次加载该插件。
我如何防止这种情况?
这是制作表单的代码。
public override IRhinoCommand.result RunCommand(IRhinoCommandContext context)
{
Splash Splash = new Splash();
Splash.Show();
return IRhinoCommand.result.success;
}
答案 0 :(得分:4)
public override IRhinoCommand.result RunCommand(IRhinoCommandContext context)
{
if (!Application.OpenForms.OfType<Splash>().Any())
{
new Thread(() => Application.Run(new Splash())).Start();
}
return IRhinoCommand.result.success;
}