- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
在名为“Dev”的表单上,我有以下 OnFormClosing 函数来确保在用户关闭表单时正确关闭线程。
protected override void OnFormClosing(FormClosingEventArgs e)
{
base.OnFormClosing(e);
dev.stopMultipleColorsWatcher();
}
如果我直接关闭“Dev”表单,工作正常。但是,如果“Dev”窗体因为主窗体(“Form1”)关闭(导致程序退出)而关闭,则永远不会调用“Dev”中的 OnFormClosing()
函数,因此线程继续运行,需要通过任务管理器终止程序的进程。
我该如何解决这个问题?我意识到我可以将一个 OnFormClosing()
函数添加到“Form1”,然后调用“Dev”中的 OnFormClosing()
函数,但我希望有更多的东西干净。
更新:
从主窗体打开开发窗体:
private void btn_opendev_Click(object sender, EventArgs e)
{
Dev frm = new Dev();
frm.Show();
}
主窗体实际上称为“programname.UI.Main”(我知道正确..)并在“Program.cs”中打开(因此程序的入口点):
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new programname.UI.Main());
}
最佳答案
代替
Dev frm = new Dev();
frm.Show();
试试这个
Dev frm = new Dev();
frm.Show(this);
此方法向子窗体显示所有者,所有转到主窗体的事件都应该转到子窗体。
关于c# - 如果由于程序退出/主窗体关闭而终止,则窗体无法正常关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11471168/
对于一个科学实验,我写了一个turtle.py ,它会打开一个 800x480 的窗口并绘制一个缓慢增长的黑点。 turtle.py以 C:\Users\kaza>python C:\Users\ka
我开发了一个 swing 应用程序,但每次运行应用程序时都会打开一个新窗口。我希望如果一个窗口已经打开,则其他窗口不允许打开。 最佳答案 Here是一个 Java 单一应用实例的例子: A singl
有没有办法检测主进程中 Electron 的结构? process.platform 似乎也在 x64 机器上返回 win32,我没有在文档中找到任何获取架构的选项。 最佳答案 你试过 process
public short[] HanningWindow(short[] signal_in ,int pos ,int size) { for (int i= pos; i < pos+si
我有一个具有这些属性的 Electron 窗口: mainWindow = new BrowserWindow({ width: 800, height: 600, title: "Aqu
我有一个 Ubuntu 工作站,我正在尝试引导一个 Windows 节点。 Windows 节点在端口 2222 上打开了 ssh。我一直在关注 http://docs.opscode.com/plu
我是一名优秀的程序员,十分优秀!