Java 图形化界面的实现

您所在的位置:网站首页 vscode图形化界面运行不出来 Java 图形化界面的实现

Java 图形化界面的实现

#Java 图形化界面的实现| 来源: 网络整理| 查看: 265

Java 图形化界面的实现 1.图形化界面实现所需的条件

      图形化界面的窗体,图形化界面的面板

2.界面的窗体    2.1 什么是图形化界面的窗体

         如图,黑色的外边框就类似于图形化界面的窗体,要实现图形化界面,窗体是不可少的,或许有人会问只要外边框就可以了吗?当然是不可以的,还需要面板,要不然只有了外边框,里面啥也没有,那图形化界面还能称之为图形化界面.

   2.1 如何在Java 程序中实现图形化界面的窗体

         我们都知道Java 的有一个特点就是万物皆可调用

         2.1.1 Java中的窗体类

                  在Java所有类中,有一个类可以实现图形化界面的窗体,继承都有所了解吧,子类继承父类,继承父类声明的所有公共方法和属性

                  JFrame类是Java中的窗体类,我们现在声明一个类,去继承JFrame.

         2.1.2 自定义窗体类的步骤

                  1.写一个类继承于JFrame

                  2.写一个构造方法,初始化窗体的属性

         2.1.3 实现自定义窗体类

                    例如:

import javax.swing.JFrame; //写一个类继承于 JFrame public class Frame extends JFrame{ //构造方法 public Frame(){ //设置窗体的标题 来源于JFrame setTitle(标题); setTitle("图形化界面"); //设置窗体的大小 setSize(宽度,高度); setSize(512,726); //设置窗体的位置 设置位置居中显示 setLocationRelativeTo(null); setLocationRelativeTo(null); //如果不想改变窗口的大小 setResizable(false); setResizable(false); //窗口关闭后所打开的程序并没有关闭,会大大影响运行内存,所以我们可以每次关闭的时候关闭程序 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //运行 public static void main(String args[]){ //创建Frame的对象 Frame frame = new Frame(); //显示窗口 true 是显示窗口,false 是隐藏窗口 frame.setVisible(true); } } }

 结果

3.图形化界面的面板    3.1 什么是图像化界面的面板

          

图形化界面的面板就是黑色外边框以内的红色的部分,要实现图像化界面,面板也是不可或缺的一部分.和窗体一样重要,缺一不可!

    3.2 Java 中的面板类

          在Java所有类中,有一个类可以实现图形化界面的面板,继承都有所了解吧,子类继承父类,继承父类声明的所有公共方法和属性

           JPanel类是Java中的窗体类,我们现在声明一个类,去继承JPanel.

    3.3 自定义面板的步骤

          1.创建一个类继承 JPanel 

          2.创建一个构造方法,初始化(确定)面板的属性

    3.4实现自定义面板类

    添加背景颜色

import java.awt.Color; import javax.swing.JPanel; //创建一个类去继承Jpanel public class Panel extends JPanel{ //构造方法 public Panel{ //设置背景的颜色 setBackground(Color.pink); } }

   添加背景图片    添加背景图片需要一个 APP的类 

import java.awt.image.BufferedImage; public class App{ /** BufferedImage Java 中用来表示图片类 @param path 图片的路径 */ public static BufferedImage getImage(String path){ // Java 中的IO流,输送数据的管道 // 输入输出流 // App.class ,找到App类的路径(用到了反射的知识) // getResource() 获取资源 try{ BufferedImage img = ImageIO.read(App.class.getResource(path)); //如果找到图片,就将图片返回 return img; }catch(IOException e){ // catch 如果找不到图片,就会捕获找不到图片的原因 e.printStackTrace(); } return null; } }

添加背景图片

import java.awt.Color; import javax.swing.JPanel; //创建一个类去继承Jpanel public class Panel extends JPanel{ //1.定义背景图 BufferedImage bg; //构造方法 public Panel{ //设置背景的颜色 setBackground(Color.pink); //初始化图片 bg = App.getImage(图片在哪个路径 如:"/image/1.png"); //重写Paint 方法 @override public void paint(Graphics g){ super.paint(g); //调用 方法 g.drawImage(),确定图片的坐标, 如 g.drawImage(图片, 图片的横坐标,图片的纵坐标,图片的宽,图片的高,null); g.drawImage(bg,0,0,512,726,null); } } }

  面板要实现,将他加到窗体中

import javax.swing.JFrame; //写一个类继承于 JFrame public class Frame extends JFrame{ //构造方法 public Frame(){ //设置窗体的标题 来源于JFrame setTitle(标题); setTitle("图形化界面"); //设置窗体的大小 setSize(宽度,高度); setSize(512,726); //设置窗体的位置 设置位置居中显示 setLocationRelativeTo(null); setLocationRelativeTo(null); //如果不想改变窗口的大小 setResizable(false); setResizable(false); //窗口关闭后所打开的程序并没有关闭,会大大影响运行内存,所以我们可以每次关闭的时候关闭程序 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //运行 public static void main(String args[]){ //创建Frame的对象 Frame frame = new Frame(); //创建Panel 对象 Panel panel = new Panel(); //显示窗口 true 是显示窗口,false 是隐藏窗口 frame.setVisible(true); //将面板添加到JPrame frame.add(panel); } } }

注:窗体和面板是一起的是不可分的

结果

面板的的优化下次在详细戏说!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3