如何让winform窗体总在最前:
是这样,我有一个窗体,已经设置topmost=true,已经在最前,在窗体中我添加一段代码,调用一个Process,启动一个软件,这个软件启动的时候会有一个启动画面,每次...
是这样,我有一个窗体,已经设置topmost=true,已经在最前,在窗体中我添加一段代码,调用一个Process,启动一个软件,这个软件启动的时候会有一个启动画面,每次process.start()以后,软件的启动画面都还是会蹦到我的窗体前边,求高手的解决方案,如何让我的窗体一直在最前,不被任何程序和软件遮挡。
展开
11个回答
展开全部
额。你可以试试 启动一个timer 。定时器,将topmost=true 放在里面不知道行否。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能不能试着去控制信打开的那个程序的窗口……多试一下!加油,呵呵!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那你就设置一下这个启动画面启动时最小化啊!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
折中一下吧,启动的时候先隐藏,启动完成之后再显示
Process process = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.WindowStyle = ProcessWindowStyle.Hidden;process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.Start();
process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
this.Activate();
你写的代码是不可能凑效的,进程启动完之后才能执先你后而后面代码。它是同步执行的
Process process = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.WindowStyle = ProcessWindowStyle.Hidden;process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.Start();
process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
this.Activate();
你写的代码是不可能凑效的,进程启动完之后才能执先你后而后面代码。它是同步执行的
更多追问追答
追问
不行
追答
Process process = new Process();
ProcessStartInfo info = new ProcessStartInfo();
info.WindowStyle = ProcessWindowStyle.Hidden;
info.FileName = "templet.xls";//这里要替换成你的路径;
process.StartInfo = info;
process.Start();
process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
如果这不行我把头剁下来给你,在vs2005下测试通过,vs2008,vs2010有问题的可能性不大,有问题改一下函数的用法就可以了
又测试了一下,只要把form的topmost设成true, this.Activate();这句话可以省了,而且不会闪动,一直显示在前面。给分吧,小伙子。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询