「java切换窗体」java怎么切换窗口
今天给各位分享java切换窗体的知识,其中也会对java怎么切换窗口进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、JAVA怎么写代码使一个窗口打开另一个窗口
- 2、Java中怎么在一个窗体点击一个按钮打开另一个窗体?
- 3、java中如何从一个窗口通过点击按钮进入另外一个窗口? (两个窗口不在一个class中。)
- 4、java窗体之间的切换!急哦!
- 5、java 如何实现在同一窗口中点击后切换界面(是指整个窗口中的全部都换掉)
- 6、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怎么切换窗口的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-11-25,除非注明,否则均为
原创文章,转载请注明出处。