毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> net技术 >> 正文

窗体试图将不符合要求的窗体设置为它的所有者

更新时间:2015-3-6:  来源:毕业论文

现有窗体Login及窗体 MainForm,Program中直接打开Login。
想把Login隐藏,显示MainForm。

                this.Hide();
                MainForm fff = new MainForm("admin", "0", strA);
                this.Owner = fff;              
                fff.ShowDialog();

在一般情况下运行正常,但是有时候(概率大约10%)会报错。窗体试图将不符合要求的窗体设置为它的所有者,窗体不能拥有自身或其所有者

一般是fff.Owner = this 这样吧?
你吧当前窗口的父窗体设置成新new出来的窗体这个是什么意思啊?从来没这么试过。

当前窗体不可以设置新建窗体为父窗体
只能是新建窗体设置当前窗体为父窗体

这就跟你生了个孩子,再认孩子当干爹一样,是很无厘头的行为

如果不用ShowDialog,改用Show,可能还能成功(没试验过,但是起码逻辑上看起来问题还不大)

而使用模态窗体,代码会阻塞在这一句,等模态窗体关闭后才会继续执行
而设置了Owner后,父窗体关闭,子窗体也会跟着关闭

如此一来,你当前窗体设置新窗体为父窗体,然后以模式对话框的形式弹出,等新窗体关闭的时候,当前窗体也就跟着关闭,然后程序退出了,这语法即使能通过,也绝对是个BUG设计

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。