C#关于模式窗体的问题 50
现在有3个FormForm1,Form2,Form3Form1下有如下代码Form1form1=newForm1();Form2form2=newForm2();Form...
现在有3个Form Form1,Form2,Form3
Form1 下有如下代码
Form1 form1 = new Form1();
Form2 form2 = new Form2();
Form3 form3 = new Form3();
form1 = this;
在Form2,Form3 的Load中也有也有Form1.form2 = this;
Form1.form3=this;
现在在Form1 和Form2 各加入一个BUTTON
Form1中Button1事件为
form2.ShowDialog();
在Form2中Button2事件为
Form1.form2.hide();
Form1.form3.ShowDialog();
此时Form3打开,Form2 会隐藏掉,而且Form1会被自动后置到当前你在桌面中打开的所有窗口的最后方.
请问如何不让Form1后置到所有页面的最后方?
你们搞错我的意思了...我是说比如我开了个浏览器,FORM1本来在浏览器上面一层的,可是点了Form2的按钮后FORM2消失,FORM1则会被浏览器挡住,然后FORM3在浏览器上方...夹住 展开
Form1 下有如下代码
Form1 form1 = new Form1();
Form2 form2 = new Form2();
Form3 form3 = new Form3();
form1 = this;
在Form2,Form3 的Load中也有也有Form1.form2 = this;
Form1.form3=this;
现在在Form1 和Form2 各加入一个BUTTON
Form1中Button1事件为
form2.ShowDialog();
在Form2中Button2事件为
Form1.form2.hide();
Form1.form3.ShowDialog();
此时Form3打开,Form2 会隐藏掉,而且Form1会被自动后置到当前你在桌面中打开的所有窗口的最后方.
请问如何不让Form1后置到所有页面的最后方?
你们搞错我的意思了...我是说比如我开了个浏览器,FORM1本来在浏览器上面一层的,可是点了Form2的按钮后FORM2消失,FORM1则会被浏览器挡住,然后FORM3在浏览器上方...夹住 展开
3个回答
展开全部
如果不想让form1置于最后,您可以考虑在打开form3时暂时设置form1的topmost=true,这样form1就置于最前端了.在关闭form3的时候将form1的topmost还原为false
追问
不行,这个办法解决不了问题,不然你试试了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Control有个SendToBack 函数,可以将窗体放在后面,你可以试试。 我刚试过,应该是可以的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ShowDialog是打开模态窗体,那么被模态显示出来的窗体一定会在将其显示出来的窗体的前面,你可以改用Show
追问
你搞错我的意思了...我是说比如我开了个浏览器,FORM1本来在浏览器上面一层的,可是点了Form2的按钮后FORM2消失,FORM1则会被浏览器挡住,然后FORM3在浏览器上方...夹住
追答
这样你可以试试
TopMost = true;
TopMost = false;
或
Form1.Focus();
然后再显示Form3
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询