在C#中如何关闭隐藏窗口(在C#中如何关闭隐藏主启动窗体)

2025-01-06 百科 86阅读 投稿:惆怅

1.在C#中如何关闭隐藏窗口

有个代码,治标治本, 你理解一下:

//显示 帮助信息 窗体

private void ShowHelpForm()

{

bool find = false;

foreach (Form f in Application.OpenForms)

{

if (f is Form_Help)

{

f.Activate(); //有点自己不明白

find = true;

}

}

if (!find)

{

Form_Help fh = new Form_Help();

fh.Show();

// Application.Run(new Form_Help());

}

}

其中 用 foreach (Form f in Application.OpenForms)

历遍所有 OpenForms 打开的窗体,

你可以在循环中判断 if (!f.Visible){ f.Close(); }

如果 窗体是隐藏的 就关闭。

如果要关闭 指定的隐藏窗体Form1 就

if((!f.Visible)&&(f.Name=="Form1")) { f.Close(); }

相信有帮助的

2.在C#中如何关闭隐藏主启动窗体

想退出程序可以使用这个Application.Exit();

登陆窗口和主窗口可以参考下面的代码

新建一个类

class app{

/// <summary>

/// 应用程序的主入口点。

/// </summary>

[STAThread]

static void Main()

{

FrmLogin login=new FrmLogin();

login.ShowDialog();

if(判断是否登陆成功)

{

//启动程序主窗口

Application.Run(new FrmMain());

}

}

}

3.c# 子窗体关闭后 怎么把已经隐藏的父窗体显示出来

应该这样写:

父窗体的按键事件里写

form1 f = new form1();

this.Hide();

DialogResult d = f.ShowDialog();

if(d == DialogResult.Cancel)

this.Visible = true;

子窗体的按键事件里写

this.DialogResult = DialogResult.Cancel;

form1改成自己的父窗体名

form2改成自己的子窗体名

回来点赞是一种习惯

4.怎样关闭窗体,虽然窗体能隐藏,但却关闭不了

setDefaultCloseOperation 是 JFrame 类里面的方法吧,你用成 Frame,还有你的类不是继承 JFrame ,你是直接 new的,所以 使用 setDefaultCloseOperation时候,请 带上对象名,写成 F.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

import java.awt.*;

import javax.swing.JFrame;

public class myframe{

public static void main(String[] args){

JFrame F=new JFrame("佳木斯114网库欢迎您");

F.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

F.setSize(800,600);

F.setLocation(300,400);

F.getContentPane().setBackground(Color.red); // 设置背景颜色

F.setVisible(true);

Button btn1=new Button("首页");

Button btn2=new Button("关于我们");

Button btn3=new Button("招聘");

Button btn4=new Button("行业动态");

Button btn5=new Button("联系我们");

btn1.setSize(20,40);

btn2.setSize(20,40);

btn3.setSize(20,40);

btn4.setSize(20,40);

btn5.setSize(20,40);

F.add(btn1,"North");

F.add(btn2,"South");

F.add(btn3,"West");

F.add(btn4,"East");

F.add(btn5,"Center");

F.setLayout(new FlowLayout());

F.setVisible(true);

}

private static void setLayout(FlowLayout flowLayout) {

// TODO Auto-generated method stub

}

private static void setDefaultCloseOperation(int disposeOnClose) {

// TODO Auto-generated method stub

}

声明:沿途百知所有(内容)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系我们将尽快删除