java的GUI实现简单切换界面

本文实例为大家分享了java GUI实现简单切换界面的具体代码,供大家参考,具体内容如下

1.关于java的GUI简单切换界面

在刚开始学习java的gui界面设计的时候因为课本上没有相关切换界面的介绍,所以如何进行简单的一个界面切换困扰了我很久。因此我上网看了一些代码,却发现网上的大多数代码都很繁琐,仔细看下去感觉有许多冗余,虽然那些代码达到了切换界面的目的,但也有其它一些我暂时用不上的功能。
简而言之,就是网上这部分的代码不够精简。于是我开始单单把这一简单的功能剥离出来。废话不多说还是先上代码吧,想说的话都在注释里。 视图部分代码:

import java.awt.BorderLayout;
import javax.swing.*;

public class View extends JFrame {
    public void view()
    {
        ViewAction exwpAction=new ViewAction(this);//提前定义好动作对象
        setLayout(new BorderLayout());//使用BorderLayout布局
        setSize(400,400);//设置界面大小
        this.setTitle("视图1界面");//设置界面名称
        JButton eb=new JButton("视图2");//设置切换的按钮eb
        JLabel tip_l=new JLabel("视图1",0);//界面的内容,这里用一个标签来替代具体内容,后面的“0”是为了使这个标签居中对齐
        eb.addActionListener(exwpAction);//为eb这个按钮添加按键监听
        add(tip_l, BorderLayout.CENTER);//将tip_l这个标签添加到布局的中间
        add(eb, BorderLayout.SOUTH);//将按钮eb添加到布局的下方
        setVisible(true);//使视图可视化
    }
    public void view2()
    {
        ViewAction exwpAction=new ViewAction(this);
        setLayout(new BorderLayout());
        setSize(400,400);
        this.setTitle("视图2界面");
        JButton eb=new JButton("视图1");
        JLabel tip_l=new JLabel("视图2",0);
        eb.addActionListener(exwpAction);
        add(tip_l, BorderLayout.CENTER);
        add(eb, BorderLayout.SOUTH);
        setVisible(true);
    }

}

动作部分代码:

import java.awt.event.ActionEvent;

public class ViewAction implements java.awt.event.ActionListener {
    /*
     * 这一部分是因为我把界面和动作分开成两个类来写了才需要进行对象的传递如果动作和界面在一个对象中写的话就不需要传入对象了
     */
    View v=new View();//先定义一个View对象在切换界面的时候会使用到
    public ViewAction(View v)//将外界的View对象传入这个类里 
    {
        this.v=v;
    }
    public void actionPerformed(ActionEvent event)
    {
    Object object=event.getSource();//创建事件源对象
    switch(event.getActionCommand()){
    //如果按下视图1
    case "视图1":
        //这里之所以先创建新视图再关闭旧视图是因为反过来的话我们会发现延迟看上去会有一些难受
        new View().view();//new一个View类并调用里面的view函数
        v.setVisible(false);//关闭穿进来的那个类的视图
        break;
    //如果按下视图2
    case "视图2":
        new View().view2();
        v.setVisible(false);
        }
    }

}

主类部分代码:

public class Main {
    public static void main(String[] args) {
        View v=new View();
        v.view();
    }

}

运行效果:

运行主类后:

点击视图2后

点击视图1后

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • java单例模式实现面板切换

    本文实例为大家分享了java单例模式实现面板切换的具体代码,供大家参考,具体内容如下 1.首先介绍一下什么是单例模式: java单例模式是一种常见的设计模式,那么我们先看看懒汉模式: public class Singleton_ { //设为私有方法,防止被外部类引用或实例 private Singleton_(){ System.out.println("懒汉单例模式"); } private static Singleton_ single = null; //并对外只暴露get

  • java的GUI实现简单切换界面

    本文实例为大家分享了java GUI实现简单切换界面的具体代码,供大家参考,具体内容如下 1.关于java的GUI简单切换界面 在刚开始学习java的gui界面设计的时候因为课本上没有相关切换界面的介绍,所以如何进行简单的一个界面切换困扰了我很久.因此我上网看了一些代码,却发现网上的大多数代码都很繁琐,仔细看下去感觉有许多冗余,虽然那些代码达到了切换界面的目的,但也有其它一些我暂时用不上的功能.简而言之,就是网上这部分的代码不够精简.于是我开始单单把这一简单的功能剥离出来.废话不多说还是先上代码

  • java基于GUI实现简单画笔小画板

    在一块画板上实现鼠标点击画图案的功能(本文未实现拖动划线功能),供大家参考,具体内容如下 思路 与java设计GUI的大体思路一致, 先设置Frame类作为框架, 其中添加组件类作为功能补充. 该设计中需要设置鼠标监听类, 给frame加上组件 this.addMouseListener(new MyMouseListener()); 并自己实现一个监听类, implements需要重写所有方法, 所以使用适配器 private class MyMouseListener extends Mou

  • Java实现简单GUI登录和注册界面

    本文实例为大家分享了Java实现简单GUI登录和注册界面的具体代码,供大家参考,具体内容如下 先看效果图: 登陆界面: 注册界面: 实现代码如下: 一.登陆界面 package cn.bms.view; import java.awt.Color; import java.awt.Dimension; import java.awt.Font; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; imp

  • java swing 创建一个简单的QQ界面教程

    记录自己用java swing做的第一个简易界面. LoginAction.java package com.QQUI0819; import javax.swing.*; import java.awt.event.*; //首先,编写按钮癿监听器实现类 public class LoginAction implements ActionListener { private int count=0; //当前为null,创建后指向界面输入框 private JTextField ulName;

  • java实现简单登录界面的实战过程

    目录 一.概要 二.分类部分 三.代码实现 总结 一.概要 我们可以用java实现简单的登录界面. 如上效果,直观但也需要一步一步来完成,从界面弹窗的设置,图片的插入,文本框的设置,到登录的按钮,全由代码来实现. 二.分类部分 LoginUI类:实现界面的设置,构建方法,封装好所有的界面开发代码 ①initUI方法 :1.创建窗体对象: 2.设置窗体的相关属性(标题.尺寸.大小.关闭.可视化): 3.创建组件对象,按钮,输入框: 4.界面窗口添加按钮: 5.按钮添加监听器. ②main方法 :用

  • JAVA基础-GUI

    Java也提供图像化编程 图形化 GUI(图形用户界面) GUI 1  Graphical User Interface(图形用户接口) 2  用图形的方式,来显示计算机操作的界面,这样更方便更直观 CLI 1  Command line User Interface (命令行用户接口) 2  就是常见的Dos命令行操作 3  需要记忆一些常用的命令,操作不直观 Java为GUI提供的对象都存在java.Awt和javax.Swing两个包中 Awt和Swing java.Awt:Abstrac

  • Java编程GUI中的事件绑定代码示例

    程序绑定的概念: 绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来.对java来说,绑定分为静态绑定和动态绑定:或者叫做前期绑定和后期绑定 静态绑定: 在程序执行前方法已经被绑定,此时由编译器或其它连接程序实现.例如:C. 针对java简单的可以理解为程序编译期的绑定:这里特别说明一点,java当中的方法只有final,static,private和构造方法是前期绑定 动态绑定 后期绑定:在运行时根据具体对象的类型进行绑定. 若一种语言实现了后期绑定,同时必须提供一些机制,可在运行期间

  • JSP制作简单登录界面实例

    现在很多web项目都能用到登录界面,本文介绍一下JSP制作简单登录界面,分享给大家,具体如下: 运行环境 eclipse+tomcat+MySQL 不知道的可以参考Jsp运行环境--Tomcat 项目列表 这里我先把jsp文件先放在Web-INF外面访问 1.需要建立的几个文件在图上.jsp 2.还要导入MySQL的jar包mysql-5.0.5.jar,导到WEB-INF中的lib文件夹就可以不需要Bulid Path 3.开始编写代码: 代码演示: index.jsp就好像一般网站的首页一样

  • java Swing组件setBounds()简单用法实例分析

    本文实例讲述了java Swing组件setBounds()简单用法.分享给大家供大家参考,具体如下: 先看API: public void setBounds(Rectangle r) 移动组件并调整其大小,使其符合新的有界矩形 r.由 r.x 和 r.y 指定组件的新位置,由 r.width 和 r.height 指定组件的新大小 参数: r - 此组件的新的有界矩形 从API来看,该方法的作用相当于setLocation()与 setSize()的总和.在实际使用时,需将容器的layout

  • 用Python给图像算法做个简单应用界面

    以前在Windows上做界面用MFC,现在做算法都是基于Python,所以转用Python的Tkinter库来做.主要是能使用Opencv和Torch处理数据,然后在界面上显示. 效果如下: 主要包括3个板块,其余还有一些小功能: 1.显示固定的图片.或从电脑加载一张图片并显示(涉及到按钮的响应函数编写和弹窗) 2.下拉框和文本框的使用 3.进度条的使用(涉及到多线程) Tkinter支持控件自动调整布局,但是时间比较赶就不研究了,使用固定位置布局,界面也不给调整. 控件名称 Buttom 按钮

随机推荐