1.在C#中如何關(guān)閉隱藏窗口
有個(gè)代碼,治標(biāo)治本, 你理解一下:
//顯示 幫助信息 窗體
private void ShowHelpForm()
{
bool find = false;
foreach (Form f in Application.OpenForms)
{
if (f is Form_Help)
{
f.Activate(); //有點(diǎn)自己不明白
find = true;
}
}
if (!find)
{
Form_Help fh = new Form_Help();
fh.Show();
// Application.Run(new Form_Help());
}
}
其中 用 foreach (Form f in Application.OpenForms)
歷遍所有 OpenForms 打開的窗體,
你可以在循環(huán)中判斷 if (!f.Visible){ f.Close(); }
如果 窗體是隱藏的 就關(guān)閉。
如果要關(guān)閉 指定的隱藏窗體Form1 就
if((!f.Visible)&&(f.Name=="Form1")) { f.Close(); }
相信有幫助的
2.在C#中如何關(guān)閉隱藏主啟動(dòng)窗體
想退出程序可以使用這個(gè)Application.Exit();
登陸窗口和主窗口可以參考下面的代碼
新建一個(gè)類
class app{
/// <summary>
/// 應(yīng)用程序的主入口點(diǎn)。
/// </summary>
[STAThread]
static void Main()
{
FrmLogin login=new FrmLogin();
login.ShowDialog();
if(判斷是否登陸成功)
{
//啟動(dòng)程序主窗口
Application.Run(new FrmMain());
}
}
}
3.c# 子窗體關(guān)閉后 怎么把已經(jīng)隱藏的父窗體顯示出來
應(yīng)該這樣寫:
父窗體的按鍵事件里寫
form1 f = new form1();
this.Hide();
DialogResult d = f.ShowDialog();
if(d == DialogResult.Cancel)
this.Visible = true;
子窗體的按鍵事件里寫
this.DialogResult = DialogResult.Cancel;
form1改成自己的父窗體名
form2改成自己的子窗體名
回來點(diǎn)贊是一種習(xí)慣
4.怎樣關(guān)閉窗體,雖然窗體能隱藏,但卻關(guān)閉不了
setDefaultCloseOperation 是 JFrame 類里面的方法吧,你用成 Frame,還有你的類不是繼承 JFrame ,你是直接 new的,所以 使用 setDefaultCloseOperation時(shí)候,請(qǐng) 帶上對(duì)象名,寫成 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網(wǎng)庫歡迎您");
F.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
F.setSize(800,600);
F.setLocation(300,400);
F.getContentPane().setBackground(Color.red); // 設(shè)置背景顏色
F.setVisible(true);
Button btn1=new Button("首頁");
Button btn2=new Button("關(guān)于我們");
Button btn3=new Button("招聘");
Button btn4=new Button("行業(yè)動(dòng)態(tài)");
Button btn5=new Button("聯(lián)系我們");
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
}