java图形界面编程实战代码

关于Java图形化界面设计,基础知识网上可搜,下面简单介绍一下重点概念,然后就由浅入深代码实例。

程序是为了方便用户使用的,Java引入图形化界面编程。

1.JFrame 是容器类

2.AWT 是抽象窗口组件工具包,是 Java 最早的用于编写图形节目应用程序的开发包。

3.Swing 是为了解决 AWT 存在的问题而新开发的包,它以 AWT 为基础的。

代码实例1:

package com.zhouzhou;
//练习网格布局
import java.awt.*;
import javax.swing.*;

public class Demo9 extends JFrame {
  // 定义组件
  int size = 9;
  JButton jbs[] = new JButton[size];

  public static void main(String[] args) {
    // 创建实例
    Demo9 de = new Demo9();
  }

  // 构造函数
  public Demo9() {

    // 创建组件
    for (int i = 0; i < size; i++) {
      jbs[i] = new JButton(String.valueOf(i));
    }
    // 设置网格布局,这里只有前两个参数(行/列)3和3 的话,网格没有空隙
    this.setLayout(new GridLayout(3, 3, 10, 10));

    // 添加组件
    for (int i = 0; i < size; i++) {
      this.add(jbs[i]);
    }
    // 设置窗体属性
    this.setTitle("网格布局案例");
    this.setSize(300, 400);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setLocation(200, 200);

    // 显示
    this.setVisible(true);
  }
}

代码实例2:

package com.zhouzhou;

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

public class Demo10 extends JFrame {
  // 定义组件
  JPanel jp1, jp2;
  JButton jb1, jb2, jb3, jb4, jb5, jb6;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Demo10 de = new Demo10();
  }

  // 构造函数
  public Demo10() {
    // 创建组件

    jp1 = new JPanel();
    jp2 = new JPanel();

    jb1 = new JButton("西瓜");
    jb2 = new JButton("苹果");
    jb3 = new JButton("荔枝");
    jb4 = new JButton("葡萄");
    jb5 = new JButton("桔子");
    jb6 = new JButton("香蕉");

    // 设置布局管理器,
    //JPanel布局默认是BorderLoyout// 添加JPanel
    //JPanel属于容器类组件,可以加入别的组件
    jp1.add(jb1);
    jp1.add(jb2);

    jp2.add(jb3);
    jp2.add(jb4);
    jp2.add(jb5);

    // 把jpanel 加入JFrame
    this.add(jp1, BorderLayout.NORTH);
    this.add(jb6, BorderLayout.CENTER);
    this.add(jp2, BorderLayout.SOUTH);

    this.setSize(300, 400);
    this.setLocation(200, 200);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);
  }
}

代码实例3:

package com.zhouzhou;

import java.awt.*;

import javax.swing.*;

public class Demo11 extends JFrame {

  // 定义组件
  JPanel jp1, jp2, jp3;
  JLabel jlb1, jlb2;
  JButton jb1, jb2;
  JTextField jtf1;
  JPasswordField jpf1;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Demo11 d1 = new Demo11();

  }

  // 构造函数
  public Demo11() {

    jp1 = new JPanel();
    jp2 = new JPanel();
    jp3 = new JPanel();

    jlb1 = new JLabel("用户名");
    jlb2 = new JLabel("密  码");

    jb1 = new JButton("登录");
    jb2 = new JButton("取消");

    jtf1 = new JTextField(10);

    jpf1 = new JPasswordField(10);// 设置布局管理(上面忘记:extends JFrame,这里出错了)
    this.setLayout(new GridLayout(3, 1));

    // 加入各个组件
    jp1.add(jlb1);
    jp1.add(jtf1);

    jp2.add(jlb2);
    jp2.add(jpf1);

    jp3.add(jb1);
    jp3.add(jb2);

    // 加入到JFrame
    this.add(jp1);
    this.add(jp2);
    this.add(jp3);

    this.setSize(250, 150);
    this.setTitle("登录");
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);
  }
}

代码实例4:

package com.zhouzhou;

import java.awt.*;

import javax.swing.*;

public class Demo12 extends JFrame {

  // 定义组件
  JPanel jp1, jp2, jp3;
  JLabel jlb1, jlb2;
  JCheckBox jcb1, jcb2, jcb3;
  JRadioButton jrb1, jrb2;
  JButton jb1, jb2;
  // 单选设置
  ButtonGroup bg, bg2;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Demo12 d2 = new Demo12();

  }

  // 构造函数
  public Demo12() {
    jp1 = new JPanel();
    jp2 = new JPanel();
    jp3 = new JPanel();

    jlb1 = new JLabel("你喜欢的运动");
    jlb2 = new JLabel("你的性别");

    jcb1 = new JCheckBox("足球");
    jcb2 = new JCheckBox("篮球");
    jcb3 = new JCheckBox("网球");
    // 下面可以设置单选
    // ButtonGroup bg2=new ButtonGroup();
    // bg2.add(jcb1);
    // bg2.add(jcb2);
    // bg2.add(jcb2);

    jrb1 = new JRadioButton("男");
    jrb2 = new JRadioButton("女");
    // 一定要把jrb1,jrb2放入到一个ButtonGroup里面
    ButtonGroup bg = new ButtonGroup();
    bg.add(jrb1);
    bg.add(jrb2);

    jb1 = new JButton("注册用户");
    jb2 = new JButton("取消用户");

    this.setLayout(new GridLayout(3, 1));

    jp1.add(jlb1);
    jp1.add(jcb1);
    jp1.add(jcb2);
    jp1.add(jcb3);

    jp2.add(jlb2);
    jp2.add(jrb1);
    jp2.add(jrb2);

    jp3.add(jb1);
    jp3.add(jb2);

    // 加入到JFrame
    this.add(jp1);
    this.add(jp2);
    this.add(jp3);

    this.setSize(300, 200);
    this.setTitle("用户注册界面");
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

  }
}

代码实例5:

package com.zhouzhou;

import java.awt.*;

import javax.swing.*;

public class Demo13 extends JFrame {
  // 定义组件
  JPanel jp1, jp2;
  JLabel jlb1, jlb2;
  JComboBox jcb1;
  JList jl1;
  JScrollPane jsp;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Demo13 d3 = new Demo13();
  }

  public Demo13() {

    jp1 = new JPanel();
    jp2 = new JPanel();

    jlb1 = new JLabel("您的籍贯是");
    jlb2 = new JLabel("您喜欢旅游的地区");

    String[] jg = { "北京", "上海", "天津", "重庆", "江苏" };
    jcb1 = new JComboBox(jg);

    String[] jg2 = { "故宫", "长城", "九寨沟", "天安门", "火星" };
    jl1 = new JList(jg2);
    // 设置你希望显示多少个选项
    jl1.setVisibleRowCount(1);
    jsp = new JScrollPane(jl1);

    // 布局管理
    this.setLayout(new GridLayout(3, 1));

    // 添加组件
    jp1.add(jlb1);
    jp1.add(jcb1);

    jp2.add(jlb2);
    jp2.add(jsp);

    this.add(jp1);
    this.add(jp2);

    this.setSize(300, 400);
    this.setTitle("下拉框练习");
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

  }

}

代码实例6:

package com.zhouzhou;

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

public class Demo14 extends JFrame {

  // 定义组件
  JSplitPane jsp;
  JList jList;
  JLabel jl1;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Demo14 d4 = new Demo14();

  }

  public Demo14() {

    // 创建组件
    String[] words = { "boy", "gril", "bird", "box" };
    jList = new JList(words);

    // JLabel可以放置图片
    jl1 = new JLabel(new ImageIcon("images/1.jpeg"));

    // 拆分窗格
    jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, jList, jl1);
    // 可以手动伸缩变化
    jsp.setOneTouchExpandable(true);

    // 设置布局管理器,它本身就是borderLayout布局,就不用再设置了

    // 添加组件
    this.add(jsp);

    this.setSize(400, 300);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

  }
}

代码实例7:

package com.zhouzhou;

import java.awt.*;

import javax.swing.*;

public class Demo15 extends JFrame {

  // 定义组件
  JTextArea jta = null;// 多行文本框
  JScrollPane jsp = null;
  JPanel jp1 = null;// 面板
  JComboBox jcb = null;// 下拉框组件
  JTextField jtf = null;// 文本框
  JButton jb = null;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Demo15 d5 = new Demo15();

  }

  // 构造函数
  public Demo15() {
    // 多行文本框会根据情况自己调节大小
    jta = new JTextArea();
    jsp = new JScrollPane(jta);
    jp1 = new JPanel();
    String j2[] = { "北京", "商行", "农行", "师大", "附中", "哈尔滨" };
    jcb = new JComboBox(j2);
    // 文本框最好设置初值
    jtf = new JTextField(10);
    jb = new JButton("发送");
    // 布局管理
    // this.setLayout(new GridLayout(1, 1));
    // 添加
    jp1.add(jcb);
    jp1.add(jtf);
    jp1.add(jb);
    // 多行文本框是放在这里(JFrame)的!!!
    // 因为上面又添加可以滚动的功能,这里传入jsp,而不是jta
    this.add(jsp);
    // 下面这里就需要定位处理
    this.add(jp1, BorderLayout.SOUTH);

    // 设置窗体属性,z这里很厉害!!
    this.setIconImage((new ImageIcon("images\\3.jpg")).getImage());

    this.setSize(300, 200);
    this.setTitle("QQ登录");
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

  }
}

代码实例8:

package com.zhouzhou;

//QQ登录界面制作
import java.awt.*;
import javax.swing.*;

public class Demo16 extends JFrame {

  // 北部区域
  JLabel jl1;

  // 南部区域
  JButton jb1, jb2, jb3;
  JPanel jp1;

  // 中部区域
  JTabbedPane jtp;// 选项卡窗格
  JPanel jp2, jp3, jp4;

  JLabel jl2, jl3, jl4, jl5;
  // 号码输入文本框
  JTextField jtf;
  // 密码
  JPasswordField jpf;
  // 清除号码
  JButton jb4;
  // 隐身登录、记住密码
  JCheckBox jcb1, jcb2;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    new Demo16();

  }

  public Demo16() {

    // 创建组件
    jl2 = new JLabel("QQ号码", JLabel.CENTER);
    jl3 = new JLabel("QQ密码", JLabel.CENTER);
    jl4 = new JLabel("忘记密码", JLabel.CENTER);
    jl4.setFont(new Font("宋体", Font.PLAIN, 16));// 设置字体样式
    jl4.setForeground(Color.BLUE);// 设置字体颜色
    jl5 = new JLabel("<html><a href='www.qq.com'>申请密码保护</a></html>");
    // 鼠标触发变化
    jl5.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));

    jtf = new JTextField();
    jpf = new JPasswordField();
    jb4 = new JButton(new ImageIcon("images\\login.png"));

    jcb1 = new JCheckBox("隐身登录");
    jcb2 = new JCheckBox("记住密码");

    // 北部区域
    jl1 = new JLabel(new ImageIcon("images\\headpicture.jpg"));

    // 南部区域
    jp1 = new JPanel();
    jb1 = new JButton(new ImageIcon("images\\login.png"));
    jb2 = new JButton(new ImageIcon("images\\delete.png"));
    jb3 = new JButton(new ImageIcon("images\\register.png"));

    // 中部区域
    jtp = new JTabbedPane();
    jp2 = new JPanel();
    jp3 = new JPanel();
    jp3.setBackground(Color.RED);// 给面板设置背景
    jp4 = new JPanel();
    jp4.setBackground(new Color(0, 0, 255));

    // 将面板添加到选项卡窗格上
    jtp.add("QQ号码", jp2);// 参数:选项卡名称,面板
    jtp.add("手机号码", jp3);
    jtp.add("电子邮箱", jp4);

    // 设置布局
    jp2.setLayout(new GridLayout(3, 3));

    // 添加组件
    jp1.add(jb1);
    jp1.add(jb2);
    jp1.add(jb3);

    jp2.add(jl2);
    jp2.add(jtf);
    jp2.add(jb4);
    jp2.add(jl3);
    jp2.add(jpf);
    jp2.add(jl4);
    jp2.add(jcb1);
    jp2.add(jcb2);
    jp2.add(jl5);

    this.add(jp1, BorderLayout.SOUTH);
    this.add(jl1, BorderLayout.NORTH);
    this.add(jtp, BorderLayout.CENTER);

    // 展示组件
    ImageIcon icon = new ImageIcon("images\\qq.png");
    this.setIconImage(icon.getImage());// 给窗体设置图标方法
    this.setSize(400, 380);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

  }
}

代码实例9:

package com.zhouzhou;

//记事本界面
import java.awt.*;
import javax.swing.*;

import java.awt.event.*;

public class Demo17 extends JFrame {

  // 工具条
  JToolBar jtb;
  JButton jb1, jb2, jb3, jb4, jb5, jb6;

  // 菜单条组件
  JMenuBar jmb;
  JMenu menu1, menu2, menu3, menu4, menu5;
  JMenuItem item2, item3, item4, item5, item6, item7;
  JMenu xinjian;// 二级菜单
  JMenuItem file, project;

  JTextArea jta;

  public static void main(String[] args) {
    // TODO Auto-generated method stub
    new Demo17();

  }

  public Demo17() {

    // 创建工具条
    jtb = new JToolBar();
    jb1 = new JButton(new ImageIcon("images\\11.png"));
    jb1.setToolTipText("新建");
    jb2 = new JButton(new ImageIcon("images\\22.png"));
    jb2.setToolTipText("打开");
    jb3 = new JButton(new ImageIcon("images\\33.png"));
    jb3.setToolTipText("等待");
    jb4 = new JButton(new ImageIcon("images\\44.png"));
    jb4.setToolTipText("统计");
    jb5 = new JButton(new ImageIcon("images\\55.png"));
    jb5.setToolTipText("参与");
    jb6 = new JButton(new ImageIcon("images\\66.png"));
    jb6.setToolTipText("旁观");

    jmb = new JMenuBar();

    menu1 = new JMenu("文件(F)");
    menu1.setMnemonic('F');// 设置助记符
    menu2 = new JMenu("编辑(E)");
    menu2.setMnemonic('E');
    menu3 = new JMenu("格式(O)");
    menu3.setMnemonic('O');
    menu4 = new JMenu("查看(V)");
    menu4.setMnemonic('V');
    menu5 = new JMenu("帮助(H)");
    menu5.setMnemonic('H');

    // item1=new JMenuItem(“新建”)
    xinjian = new JMenu("新建");
    file = new JMenuItem("文件");
    project = new JMenuItem("工程");

    item2 = new JMenuItem("打开", new ImageIcon("images\\77.png"));
    item3 = new JMenuItem("保存(S)");
    item3.setMnemonic('S');
    // 给菜单选项添加快捷方式
    item3.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,
        InputEvent.ALT_MASK));
    item4 = new JMenuItem("另存为");
    item5 = new JMenuItem("页面设置");
    item6 = new JMenuItem("打印");
    item7 = new JMenuItem("退出");

    jta = new JTextArea();

    // 设置布局

    // 添加组件
    // 将按钮添加到工具条上
    jtb.add(jb1);
    jtb.add(jb2);
    jtb.add(jb3);
    jtb.add(jb4);
    jtb.add(jb5);
    jtb.add(jb6);

    // 将菜单添加到菜单栏上
    xinjian.add(file);
    xinjian.add(project);

    menu1.add(xinjian);
    menu1.add(item2);
    menu1.add(item3);
    menu1.add(item4);
    menu1.addSeparator();// 添加分割线
    menu1.add(item5);
    menu1.add(item6);
    menu1.addSeparator();
    menu1.add(item7);

    // 将菜单添加到菜单条上
    jmb.add(menu1);
    jmb.add(menu2);
    jmb.add(menu3);
    jmb.add(menu4);
    jmb.add(menu5);

    // 将菜单添加到窗体上
    this.setJMenuBar(jmb);

    // 将工具条添加到窗体
    this.add(jtb, BorderLayout.NORTH);

    JScrollPane jsp = new JScrollPane(jta);
    jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    this.add(jsp);

    // 展示
    this.setTitle("记事本");
    ImageIcon icon = new ImageIcon("images\\jsb.png");
    this.setIconImage(icon.getImage());
    this.setSize(1200, 900);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);

  }

}

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

(0)

相关推荐

  • Java图形化编程中的键盘事件设计简介

    键盘事件的事件源一般丐组件相关,当一个组件处于激活状态时,按下.释放或敲击键盘上的某个键时就会发生键盘事件.键盘事件的接口是KeyListener,注册键盘事件监视器的方法是addKeyListener(监视器).实现KeyListener接口有3个: keyPressed(KeyEvent e):键盘上某个键被按下: keyReleased(KeyEvent e):键盘上某个键被按下,又释放: keyTyped(KeyEvent e):keyPressed和keyReleased两个方法的组合

  • Java实现鼠标拖拽移动界面组件

    默认的,Frame或者JFrame自身已经实现了鼠标拖拽标题栏移动窗口的功能. 只是,当你不满意java的JFrame样式,隐藏了标题栏和边框,又或者干脆直接使用JWindow,那你又该怎么实现鼠标拖拽移动窗口的目的呢?最开始,我简单的在mouseDragged方法里frame.setLocation(e.getX(), e.getY()),结果,frame拖拽的时候不停地闪烁,位置在屏幕上不断跳动.后来网上查资料,找到了答案. 这里给一个简单的示例,一看就明白: package com.jeb

  • Java web过滤器验证登录防止未登录进入界面

    今天用ssh2写了个简单的系统,发现了一个问题,我这系统必须先登录成功才能进入主页,但我在浏览器里直接输入主页地址,发现也能进入,这个肯定不好,毫无安全性可言,后经查资料发现需要登录过滤器,就试了下,发现果然可以避免未经登录即可进入主页的危险,下面是我整理出的详细步骤: 1.首先写一个权限过滤filter类,实现Filter接口 import java.io.IOException; import javax.servlet.Filter; import javax.servlet.Filter

  • 解析Java图形化编程中的文本框和文本区

    在图形界面中,文本框和文本区是用于信息输入输出的组件. 文本框 文本框(JTextField)是界面中用于输入和输出一行文本的框.JTextField类用来建立文本框.与文本框相关的接口是ActionListener. 文本框处理程序的基本内容有以下几个方面: 声明一个文本框名. 建立一个文本框对象. 将文本框对象加入到某个容器. 对需要控制的文本框对象注册监视器,监听文本框的输入结束(即输入回车键)事件. 一个处理文本框事件的方法,完成对截获事件进行判断和处理. JTextField类的主要构

  • 详解Java图形化编程中的鼠标事件设计

    鼠标事件的事件源往往与容器相关,当鼠标进入容器.离开容器,或者在容器中单击鼠标.拖动鼠标时都会发生鼠标事件.java语言为处理鼠标事件提供两个接口:MouseListener,MouseMotionListener接口. MouseListener接口 MouseListener接口能处理5种鼠标事件:按下鼠标,释放鼠标,点击鼠标.鼠标进入.鼠标退出.相应的方法有: (1) getX():鼠标的X坐标 (2) getY():鼠标的Y坐标 (3) getModifiers():获取鼠标的左键或右键

  • Java编程之双重循环打印图形

    双重循环打印顶点在左上的直角三角形: public static void main(String[] args) { // TODO Auto-generated method stub int num=0; System.out.println("请输入直角三角形的行数:"); Scanner input=new Scanner(System.in); num=input.nextInt(); for(int i=1;i<=num;i++){ for(int k=1;k<

  • java图形界面编程之模拟血压计

    复制代码 代码如下: package GraphicsCanvas; import java.awt.BorderLayout;import java.awt.Canvas;import java.awt.Color;import java.awt.Graphics;import java.awt.Image;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JBut

  • java图形界面AWT编写计算器

    一.前言 1)这个计算器是基于java语言下图形界面AWT编写的.其实我认为写这个计算器,实现什么功能不重要,市场也不缺这个计算器,而是在于对AWT中三大布局的及画板的使用简单控件的操作使用.通过联系熟悉掌握AWT基础为深入学习打下基础.这个计算器功能也十分简单,空有其表.不过有兴趣的话可以继续添加功能完善操作等. 2)使用平台:主要使用Myeclipse2014 3)主要知识点:java 基础; awt+swing 二.功能实现及代码展示 1)主要是layout布局的练习,对画板文本框的使用,

  • java图形界面编程实战代码

    关于Java图形化界面设计,基础知识网上可搜,下面简单介绍一下重点概念,然后就由浅入深代码实例. 程序是为了方便用户使用的,Java引入图形化界面编程. 1.JFrame 是容器类 2.AWT 是抽象窗口组件工具包,是 Java 最早的用于编写图形节目应用程序的开发包. 3.Swing 是为了解决 AWT 存在的问题而新开发的包,它以 AWT 为基础的. 代码实例1: package com.zhouzhou; //练习网格布局 import java.awt.*; import javax.s

  • Java图形界面Swing原理及用法解析

    这篇文章主要介绍了Java图形界面Swing原理及用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 JButton组件 布局管理器 FlowLayout 流式布局 BorderLayout 方位布局 GridLayout 表格布局 绝对布局 JLable 组件 文本框组件 JPanel轻量级容器 创建事件监听类 (更换监听类实现监听) 窗口监听适配器 都可使用匿名类实现监听 每个监听方法都可以返回一个Event对象来返回监听值 以上就是本

  • Java图形界面GUI布局方式(小结)

    流式布局 采用流式布局会将元素按从左到右的顺序排列,如果一个元素在一行中放不下,那这个元素会另起一行依然按照从左到右的顺序排列 示例: 代码 public class Test { public static void main(String[] args) { // 创建窗口 JFrame jFrame = new JFrame(); // 设置窗口名称 jFrame.setTitle("hello"); // 创建流式布局管理器 对齐方式为左对齐 LayoutManager lay

  • C++实现图形界面时钟表盘代码

    本文实例讲述了C++实现图形界面时钟表盘代码,分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: //POINT的数组可以这么用      POINT pt[]={          0, 450,          225,390,          390,225,          450,0,          390,-225,          225,-390,          0,-450,          -225,-390,          -390,-2

  • java图形界面之加法计算器

    JAVA用于开发图形界面应用的 SWING 组件包功能强大,使用方便.接下来我们就使用其写一个简单的图形界面小程序:加法计算器. 第一步: 首先得构思,我们要做什么.加法计算器的话,做出来之后大概是这个样子的. 如上图所示,这个程序的界面在我们脑海中已经成型了:程序顶部有一个标题,这里用来交代我们程序的名字:功能上用户可以在方框 1 和方框 2 中放入想要进行相加的数值,然后我们点击下方的 “计算” 按钮,结果就会显示在方框 3 中. 第二步: 分析界面,我们该怎么做.从上图可以看出,界面中包含

  • JAVA图形界面(GUI)之表格的示例代码

    表格(JTable)是我们在GUI开发中很常用的一个组件.表格在可视化编程中用于显示信息,在Swing编程中非常有用,当要显示大量数据时,用表格可以清晰的显示出来. 本篇博客将演示JTable的基本用法. 构造方法: 方法名 说明 JTable() 构造一个默认的 JTable,使用默认的数据模型.默认的列模型和默认的选择模型对其进行初始化 JTable(int numRows, int numColumns) 使用 DefaultTableModel 构造具有 numRows 行和 numCo

  • java图形界面之布局设计

    在界面设计中,一个容器要放置许多组件,为了美观,为组件安排在容器中的位置,这就是布局设计.java.awt中定义了多种布局类,每种布局类对应一种布局的策略.常用的有以下布局类: •FlowLayout,依次放置组件. •BoarderLayout,将组件放置在边界上. •CardLayout,将组件像扑克牌一样叠放,而每次只能显示其中一个组件. •GridLayout,将显示区域按行.列划分成一个个相等的格子,组件依次放入这些格子中. •GridBagLayout,将显示区域划分成许多矩形小单元

  • Java实现简单日历小程序 Java图形界面小日历开发

    今天给大家介绍一下如何用Java swing开发一款简单的小日历,下面我们来看代码: 首先创建一个CalendarBean类,用于基本的日期计算: package other1; import java.util.Calendar; public class CalendarBean { String day[]; int year=2005,month=0; public void setYear(int year) { this.year=year; } public int getYear

随机推荐