Java JFrame 两个框架同时显示问题
Java JFrame Both Frames Show At the Same Time Issue
我正在制作一个程序,其中有两个 frames.When 我 运行 程序两个框架同时打开 time.I 希望当我 运行 程序 第一帧打开2秒然后自动隐藏和然后第二帧应该出现.
这是我的第 1 帧代码:
public class Frame1 extends JFrame{
private JLabel type;
public Frame1(){
super("Frame 1");
setLayout(null);
type = new JLabel("This is Frame 1");
type.setFont(new Font("Tahoma", Font.PLAIN, 51));
type.setBounds(55, 227, 346, 52);
add(type);
setSize(500,600);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setResizable(false);
setVisible(true);
}
}
第 2 帧代码:
public class Frame2 extends JFrame{
private JLabel text;
public Frame2(){
super("Frame 2");
getContentPane().setLayout(null);
text = new JLabel("This is Frame 2");
text.setFont(new Font("Tahoma", Font.PLAIN, 36));
text.setBounds(10, 66, 244, 52);
getContentPane().add(text);
setSize(300,350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
}
主要:
public class Main {
public static void main(String[] args) {
Frame1 obj = new Frame1();
Frame2 obj2 = new Frame2();
}
}
obj.setState(JFrame.ICONIFIED);
您可以使用下面的代码来打开第一帧
持续 2 秒然后自动隐藏,然后是第二帧:
public class Main {
public static void main(String[] args) {
Frame1 obj = new Frame1();
try {
Thread.sleep(2000);
obj.setState(JFrame.ICONIFIED);
} catch (Exception e) {
}
Frame2 obj2 = new Frame2();
}
}
像这样改变你的主要class...
public class Main {
public static void main(String[] args) {
Frame1 obj = new Frame1();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
obj.setState(obj.ICONIFIED);
Frame2 obj2 = new Frame2();
}
这将最小化第一帧并显示第二帧。
我正在制作一个程序,其中有两个 frames.When 我 运行 程序两个框架同时打开 time.I 希望当我 运行 程序 第一帧打开2秒然后自动隐藏和然后第二帧应该出现.
这是我的第 1 帧代码:
public class Frame1 extends JFrame{
private JLabel type;
public Frame1(){
super("Frame 1");
setLayout(null);
type = new JLabel("This is Frame 1");
type.setFont(new Font("Tahoma", Font.PLAIN, 51));
type.setBounds(55, 227, 346, 52);
add(type);
setSize(500,600);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setResizable(false);
setVisible(true);
}
}
第 2 帧代码:
public class Frame2 extends JFrame{
private JLabel text;
public Frame2(){
super("Frame 2");
getContentPane().setLayout(null);
text = new JLabel("This is Frame 2");
text.setFont(new Font("Tahoma", Font.PLAIN, 36));
text.setBounds(10, 66, 244, 52);
getContentPane().add(text);
setSize(300,350);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setVisible(true);
}
}
主要:
public class Main {
public static void main(String[] args) {
Frame1 obj = new Frame1();
Frame2 obj2 = new Frame2();
}
}
obj.setState(JFrame.ICONIFIED); 您可以使用下面的代码来打开第一帧 持续 2 秒然后自动隐藏,然后是第二帧:
public class Main {
public static void main(String[] args) {
Frame1 obj = new Frame1();
try {
Thread.sleep(2000);
obj.setState(JFrame.ICONIFIED);
} catch (Exception e) {
}
Frame2 obj2 = new Frame2();
}
}
像这样改变你的主要class...
public class Main {
public static void main(String[] args) {
Frame1 obj = new Frame1();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
obj.setState(obj.ICONIFIED);
Frame2 obj2 = new Frame2();
}
这将最小化第一帧并显示第二帧。