如何在winform按钮事件中用线程打开一个窗口,最后在finally中给隐藏和关闭,也就是做简单的等待窗口效果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在winform按钮事件中用线程打开一个窗口,最后在finally中给隐藏和关闭,也就是做简单的等待窗口效果相关的知识,希望对你有一定的参考价值。

参考技术A 跳窗口的时候隐藏主窗体,子窗体关闭时显示主窗体 参考技术B 弹出窗体后调用 thread.sleep()方法 让线程停几秒或者几分钟。具体多少你自己拿捏。

C# winform 父窗口子窗口按钮控制

首先,父窗口有按钮调出不同的子窗口,没子窗口中有“修改”“保存”按钮,当点击“修改”后,父窗口中所有关于打开子窗口的按钮的值全部变为fasle。之后点击“保存”按钮,父窗口的按钮值又全部变为true。求解决办法。需要添加什么事件,和代码?

在父窗体内中添加一全局方法,查找到你要禁用的按钮,设置为不可用;
在子窗体的修改按钮中调用这一方法;

话说有必要吗?直接将子窗体打开为模式窗体,只能操作当前子窗体,在子窗体没关闭前不能操作父窗体不简单些吗?追问

因为设定是只要没点击“修改”,就仍然可以操作父窗口。

追答

那就是前面说的,定义一个全局的方法,再调用,或者把父窗体中打开子窗体的按钮设为全局的,在子窗体中操作它

追问

冒昧的问一下,这个全局方法该怎么写。。。。 没用过 举个例子也可以

追答

假设你的父窗口叫frmMain,添加方法:
public static void SettingButton()

foreach(Control control in Controls) //这里你自己改下,在哪个范围内查找

if(control is Button) //如果是按钮,就禁用它
control.Enable=false;


在子窗体按钮事件中调用:
frmMian.SettingButton();
基本就是这样,手打未验证过,细节你自己改下

参考技术A 在子窗体中修改的事件中,加上 如:buttion pass= 子窗体.FindControl("父窗体中buttion控件名"); pass.visible=fasle; 追问

错误 1 “WindowsApplication6.Form2”并不包含“FindControl”的定义
求解决方法

以上是关于如何在winform按钮事件中用线程打开一个窗口,最后在finally中给隐藏和关闭,也就是做简单的等待窗口效果的主要内容,如果未能解决你的问题,请参考以下文章

双击打开一个新的winform并关闭调用者窗口

winform时按钮如何关闭IE弹出窗口?

如何在winform中实现,一个按钮停止另一个按钮的事件

winform 打开唯一窗口

C# winform 父窗口子窗口按钮控制

.NET中开发WinForm程序,如何通过一个窗口打开另外一个窗口,要求上一窗口关闭