专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java swing入门教程内容

Java swing入门教程内容

更新时间:2022-06-17 10:30:15 来源:赢咖4 浏览765次

赢咖4小编来告诉大家java swing入门教程的内容。

大家要有myeclipse或eclipse,如没有jar包请自行网上下载。

1.创建一个JFrame

下面用简单的实例演示了Java Swing创建一个能输入内容的窗口

public class frameTest(){  
  public static void Main(String args[]){  
    //创建JFrame对象,JFrame用来在屏幕上显示一个Windows窗口。  
    JFrame frame = new JFrame("第一个JFrame");     
    // 建立一个文本输入域对象,由于文本输入域是JComponent的子类,可以采用以  
    // 下方法定义。  
    JComponent comp = new JTextArea();  
    // 将上面建立的文本输入域加入到frame对象  
    // 默认情况下,frame的内容面板(容器)采用BorderLayout布局,  
    // 这里是将文本输入域放入BorderLayout布局的Center部位。  
    // 有关BorderLayout布局的内容,请查阅  
    //   http://gyfinjava.blog.com.cn/archives/2007/2161340.shtml  
    frame.getContentPane().add(comp, BorderLayout.CENTER);  
    // 设置其高度和宽度分别为:288像素和188像素  
    frame.setSize(288,188);  
    // 显示该Frame  
    frame.setVisible(true);  
  }  
}  

2.在Java Swing教程1中的Main方法中加入以下代码:

//当用户选择窗口的退出按钮(窗口右上角的X),  
//或选择窗体功能菜单的推出项时的动作  
//下行代码可以使单击退出按钮时,退出该JFrame  
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    
//下行代码可以使JFrame的退出按钮失效  
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);  

创建没无边框的Frame(Window)

该实例演示了怎样创建一个没有边框的Frame(Window)。如果要创建

不显示边框的Frame(Window),则推荐使用JWindow。

public class JWindowTest {  
 public static void main(String[] args){  
  //创建JWindows对象  
     JWindow window = new JWindow();  
     // 这里,一样可以通过教程getContentPane().add()方法为该JWindow增加组件  
     //window.getContentPane().add(JComponent, BorderLayout.CENTER);  
     // 设置初始化大小  
     window.setSize(200, 200);  
     // 显示该窗体  
     window.setVisible(true);  
 }  
}  

3.Java为文件选择框提供了JFileChooser类API。

通过使用该类,可以很方便的现实文件选择对话框。见下例:

//建立文件选择框对象  
JFileChooser fc=new JFileChooser();  
//设定文件选择框标题  
fc.setDialogTitle("Open class File");  
//显示文件选择框,在选择后将结果储存到returnVal变量中  
int returnVal = fc.showOpenDialog(app.getFrameInstance());  
//如果用户选择了文件,并点击了"Opne/打开"按钮,显示用户选择的文件全名路径,  
//如果用户点击"Close/关闭"按钮,以及其它方式退出文件选择框,则什么也不做。  
  if (returnVal == JFileChooser.APPROVE_OPTION){  
   File file = fc.getSelectedFile();  
   System.out.println(file.getPath());  
  }  

注意在文件选择对话框中,可以进行选择目录的操作,只需要用FileChooser对象的setFileSelectionMode()方法指定其选择模 式为目录选择。见下面代码

//上例中可以在文件对话框显示语句前加上下面代码,使对话框成为目录选择对话框  
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);  

在文件选择过程中,我们可以为文件选择对话框设置过滤器,有了过滤器的对话框,会用下拉列表的方式将过滤的文件名特征显示在"文件类型"组合框中,并将不 符合条件的文件名和目录名过滤掉(不显示)。

为一个文件选择对话框设置过滤器需要定义过滤器类,见下例:

public class ClassFileFilter extends FileFilter{  
 public boolean accept(File f) {  
  String filename = f.getName();  
        return filename.endsWith(".class");  
 }  
 public String getDescription() {  
  return "*.class";  
 }  
}  

该类定义了一个过滤Java类文件"*.class"的过滤器。

将它增加到文件选择对话框中,可以过滤出以.class为尾缀的文件。见下面代码:

fc.addChoosableFileFilter(new ClassFileFilter());

针对一个对话框,我们可以为其加装多个过滤器。这里有对过滤器更加诠释的代码:

public class ImageFilter extends FileFilter {  
    //Accept all directories and all gif, jpg, tiff, or png files.  
    public boolean accept(File f) {  
        if (f.isDirectory()) {  
            return true;  
        }  
        String extension = Utils.getExtension(f);  
        if (extension != null) {  
            if (extension.equals(Utils.tiff) ||  
                extension.equals(Utils.tif) ||  
                extension.equals(Utils.gif) ||  
                extension.equals(Utils.jpeg) ||  
                extension.equals(Utils.jpg) ||  
                extension.equals(Utils.png)) {  
                    return true;  
            } else {  
                return false;  
            }  
        }  
        return false;  
    }  
    public String getDescription() {  
        return "Just Images";  
    }  
}  

4.利用J2SE提供的JTable组件类可以很方便的实现应用程序中的表格功能,其代码如下:

import java.awt.BorderLayout;  
import java.awt.Dimension;   
import javax.swing.JFrame;  
import javax.swing.JPanel;  
import javax.swing.JScrollPane;  
import javax.swing.JTable;   
public class Test01 {    
public static void main(String[] args) {  
  //声明列名数组  
  String[] columnNames = { "姓名", "性别", "年龄", "籍贯", "婚否" };  
  //声明数据二维数组  
  Object[][] data = {  
    { "赵刚", "男", new Integer(18), "北京", new Boolean(false) },  
    { "钱霞", "女", new Integer(28), "北京", new Boolean(true) },  
    { "孙大伟", "男", new Integer(32), "上海", new Boolean(false) },  
    { "李民", "男", new Integer(30), "南京", new Boolean(true) },  
    { "周丽丽", "女", new Integer(34),"重庆",new Boolean(false) } };  
  //创建JTable对象t  
  final JTable t = new JTable(data, columnNames);  
  //设置JTable对象的可视区,超出部分会用下面的滚动条来显示  
  t.setPreferredScrollableViewportSize(new Dimension(400, 70));  
  //定义一个容器  
  JPanel p = new JPanel();  
  //在容器中加入表格和滚动条  
  p.add(t);  
  JScrollPane s = new JScrollPane(t);  
  p.add(s);  
  //设置容器为透明的  
  p.setOpaque(true);  
  //以下代码在前几个Java Swing教程中已经讲过,这里不重复!  
  JFrame f = new JFrame("JTable测试!");  
  f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
  f.getContentPane().add(p,BorderLayout.CENTER);  
  f.pack();  
  f.setVisible(true);  
 }  
}  

以上就是关于“Java swing入门教程内容”介绍,大家如果对此比较感兴趣,想了解更多相关知识,不妨来关注一下赢咖4的Java视频教程,里面的课程内容细致全面,通俗易懂,很适合没有基础的小白学习,希望对大家能够有所帮助。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>