「java切换窗体」java怎么切换窗口

博主:adminadmin 2022-11-25 10:33:09 41

今天给各位分享java切换窗体的知识,其中也会对java怎么切换窗口进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

JAVA怎么写代码使一个窗口打开另一个窗口

1、首先,我们需要在代码中导入相应的包,以便能够使用 JFrame 类。然后,新建一个窗口类继承自 JFrame 类。

2、在窗口类中创建一个初始化方法,我们需要在该方法中初始化窗口类对象,并将其显示出来。

3、对窗口对象进行初始化时,我们先设置好窗口的标题。

4、再设置窗口的大小,参数分别为窗口的长和宽,单位是像素。

5、接着设置窗口左上角的坐标位置,以确定窗口的位置。参数分别为窗口左上角顶点的 x 坐标和 y 坐标。

6、最后,调用 setVisible 方法将窗口显示出来。参数为 true 表示显示,为 false 表示隐藏。

7、窗口类写好后,我们在 main 方法中创建一个窗口类对象,然后调用该对象的初始化方法就可以将窗口显示出来了。

Java中怎么在一个窗体点击一个按钮打开另一个窗体?

假如你的那个按钮叫button,你要打开的那个窗体的类名叫Form2.

你在button的click事件里面写个

Form2 fm=new Form2();

fm.show();

就行了。。当然,你的Form2类,要设置Visible为True,同时设置大小位置。不然,你看不到窗体。

给你贴个代码,你自己看吧

该代码经过调试,验证可行。

import java.awt.FlowLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

public class formshow extends JFrame implements ActionListener{

JButton button;

public formshow(){

button=new JButton("点击我,出现新窗体");

add(button);

button.addActionListener(this);

this.setLayout(new FlowLayout());

this.setBounds(520, 130, 200, 100);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String args[]){

formshow fs=new formshow();

}

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

if(e.getSource()==button){

form2 fm=new form2();

}

}

}

class form2 extends JFrame{

//第二个窗体;

JLabel jl;

static int n=1;

public form2(){

n++;

jl=new JLabel("我是第"+n+"个窗体。");

add(jl);

this.setTitle("我是第"+n+"个窗体");

//设置属性。

this.setLayout(new FlowLayout());

this.setBounds(120+11*n, 230+10*n, 200, 100);

this.setVisible(true);

this.setDefaultCloseOperation(DISPOSE_ON_CLOSE);

}

}

java中如何从一个窗口通过点击按钮进入另外一个窗口? (两个窗口不在一个class中。)

要写两个窗体,第一个窗体:

import javax.swing.SwingUtilities;

import javax.swing.JPanel;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JFrame;

import javax.swing.JButton;

import java.awt.Rectangle;

public class Frame1 extends JFrame implements ActionListener {

private static final long serialVersionUID = 1L;

private JPanel jContentPane = null;

private JButton jButton = null;

public void actionPerformed(ActionEvent arg0) {

Frame2 f2=new Frame2(this);

f2.setVisible(true);

this.setVisible(false);

}

private JButton getJButton() {

if (jButton == null) {

jButton = new JButton();

jButton.setBounds(new Rectangle(92, 62, 105, 35));

jButton.setText("进入子窗体");

jButton.addActionListener(this);

}

return jButton;

}

public static void main(String[] args) {

// TODO 自动生成方法存根

SwingUtilities.invokeLater(new Runnable() {

public void run() {

Frame1 thisClass = new Frame1();

thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

thisClass.setVisible(true);

}

});

}

public Frame1() {

super();

initialize();

}

private void initialize() {

this.setSize(300, 200);

this.setContentPane(getJContentPane());

this.setTitle("主窗体");

}

private JPanel getJContentPane() {

if (jContentPane == null) {

jContentPane = new JPanel();

jContentPane.setLayout(null);

jContentPane.add(getJButton(), null);

}

return jContentPane;

}

}

第二个窗体(可以从第一个窗体进入第二个窗体,也可从第二个窗体回到第一个窗体)

import javax.swing.SwingUtilities;

import javax.swing.JPanel;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.WindowEvent;

import java.awt.event.WindowListener;

import javax.swing.JFrame;

import javax.swing.JButton;

import java.awt.Rectangle;

public class Frame2 extends JFrame implements ActionListener, WindowListener {

private static final long serialVersionUID = 1L;

private JPanel jContentPane = null;

private JButton jButton = null;

private Frame1 f1=null;

public void actionPerformed(ActionEvent arg0) {

f1.setVisible(true);

this.setVisible(false);

}

private JButton getJButton() {

if (jButton == null) {

jButton = new JButton();

jButton.setBounds(new Rectangle(85, 48, 105, 39));

jButton.setText("回到主窗体");

jButton.addActionListener(this);

}

return jButton;

}

public static void main(String[] args) {

// TODO 自动生成方法存根

SwingUtilities.invokeLater(new Runnable() {

public void run() {

Frame2 thisClass = new Frame2();

thisClass.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

thisClass.setVisible(true);

}

});

}

public Frame2() {

super();

initialize();

}

public Frame2(Frame1 f) {

this();

f1=f;

}

private void initialize() {

this.setSize(300, 200);

this.setContentPane(getJContentPane());

this.setTitle("子窗体");

this.addWindowListener(this);

}

private JPanel getJContentPane() {

if (jContentPane == null) {

jContentPane = new JPanel();

jContentPane.setLayout(null);

jContentPane.add(getJButton(), null);

}

return jContentPane;

}

public void windowActivated(WindowEvent arg0) {

}

public void windowClosed(WindowEvent arg0) {

}

public void windowClosing(WindowEvent arg0) {

f1.setVisible(true);

}

public void windowDeactivated(WindowEvent arg0) {

}

public void windowDeiconified(WindowEvent arg0) {

}

public void windowIconified(WindowEvent arg0) {

}

public void windowOpened(WindowEvent arg0) {

}

}

java窗体之间的切换!急哦!

------------------认真看看你的程序流程-------------

运行--1.生成 AdministratorFrame1对象--2.点击jmenubar2.checkSubject--3.生成一个新的checkSubjectPanel( "new checkSubjectPanel()")对象--4.点击该对象的jb("jb=new JButton("返回")")--5.生成 new AdministratorFrame1()对象;

-------------------解释----------------------------

到此,也就是第5步出现的AdministratorFrame1对象已经发生的质的改变,它已经不是第1步中的AdministratorFrame1对象了,而是在内存中重新生成的一个新的对象,所以你下面每点击一次,就会生成一个新的对象(AdministratorFrame1或checkSubjectPanel),也就出现你的翻倍现象。

------------------建议--------------------------------

我的建议的:

1.定义一个static变量来管理AdministratorFrame1和checkSubjectPanel对象。

2.使用单例。

3.类整合,从新定义一个类,使其包含AdministratorFrame1和checkSubjectPanel或者让AdministratorFrame1包含checkSubjectPanel类的一个实例。(这里我的用词可能不正确,但对象成员与对象的关系你懂就知道了)

至于实现方法,我就不多说了,多说无益,自己去实现吧。

java 如何实现在同一窗口中点击后切换界面(是指整个窗口中的全部都换掉)

setVisible方法嘛。。 在事件相应的方法里将当前panle隐藏,将其他设置成可见

final JPanel jpanel1 = new JPanel();

jpanel1.setVisible(false);

final JPanel jpanel2 = new JPanel();

jpanel2.addMouseListener(new MouseListener(){

public void mouseClicked(MouseEvent e) {

jpanel2.setVisible(false);

jpanel1.setVisible(true);

}

public void mousePressed(MouseEvent e) {

// TODO Auto-generated method stub

}

public void mouseReleased(MouseEvent e) {

// TODO Auto-generated method stub

}

public void mouseEntered(MouseEvent e) {

// TODO Auto-generated method stub

}

public void mouseExited(MouseEvent e) {

// TODO Auto-generated method stub

}

});

Java中怎样实现窗体布局的相互切换

设置一个变量,用来统计你按下按钮的次数,根据变量的奇偶次的不同再利用BorderLayout(3,2)和BorderLayout(2,3)的变化!这个是方法,具体的程序你自己写!

关于java切换窗体和java怎么切换窗口的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-25,除非注明,否则均为首码项目网原创文章,转载请注明出处。