• 大小: 24.02 KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-08-13
  • 语言: Java
  • 标签: 实例22  

资源简介

java100例之实例22 分割一个面板(java绝对新手实例)

资源截图

代码片段和文件信息

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

/**
 * 

title: 分割面板


 * 

Description: 演示将面板分割成左右两部分


 * 

Copyright: Copyright (c) 2003


 * 

Filename:SplitPaneDemo.java 


 * @author 杜江
 * @version 1.0
 */
public class SplitPaneDemo implements ListSelectionListener {
    private String[] imageNames={“Bird.gif““Cat.gif““Dog.gif““Pig.gif“};
    private JLabel picture;
    private JList list;
    private JSplitPane splitPane;
/**
 *
方法说明:构造器,定义了所有要使用的构件
 *
输入参数:
 *
返回类型:
 */
    public SplitPaneDemo() {
        
        //创建一个图像名称的列表,设置为单选方式
        list = new JList(imageNames);
        list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
        list.setSelectedIndex(0);
        list.addListSelectionListener(this);
        JScrollPane listScrollPane = new JScrollPane(list);

        //获取默认的图片
        ImageIcon firstImage = createImageIcon(“images/“ +
                                     (String)imageNames[0]);
        if (firstImage != null) {
            picture = new JLabel(firstImage);
            picture.setPreferredSize(new Dimension(firstImage.getIconWidth()
                                                   firstImage.getIconHeight()));
        } else {
            picture = new JLabel((String)imageNames[0]);
        }
        JScrollPane pictureScrollPane = new JScrollPane(picture);

        //创建一个水平分割的面板,定义了两个面板的名字。
        splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLITtrue
                                   listScrollPane pictureScrollPane);
        splitPane.setOneTouchExpandable(true);
        splitPane.setDividerLocation(150);

        //定义面板的最小尺寸
        Dimension minimumSize = new Dimension(100 50);
        listScrollPane.setMinimumSize(minimumSize);
        pictureScrollPane.setMinimumSize(minimumSize);

        //定义初始尺寸
        splitPane.setPreferredSize(new Dimension(400 200));
    }
/**
 *
方法说明:获得这个分割的面板
 *
输入参数:
 *
返回类型:JSplitPane 对象
 */
    public JSplitPane getSplitPane() {
        return splitPane;
    }
/**
 *
方法说明:列表监听事件处理
 *
输入参数:ListSelectionEvent e 列表选择事件
 *
返回类型:
 */
    public void valueChanged(ListSelectionEvent e) {
        if (e.getValueIsAdjusting())
            return;

        JList theList = (JList)e.getSource();
        if (theList.isSelectionEmpty()) {
            picture.setIcon(null);
            picture.setText(null);
        } else {
            int index = theList.getSelectedIndex();
            ImageIcon newImage = createImageIcon(“images/“ +
                                     (String)imageNames[index]);
            picture.setIcon(newImage);
            if (newImage != null) {
                picture.setText(null);
                picture.setPreferredSize(new Dimension(newImage.getIconWidth()
                                                       newImage.getIconHeight() ));
            } else {
                picture.setText(“Image not found: “
                    

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       3658  2003-11-08 23:12  实例22 分割一个面板\SplitPaneDemo.class

     文件       4219  2003-11-11 23:17  实例22 分割一个面板\SplitPaneDemo.java

     文件       5377  2003-10-15 11:12  实例22 分割一个面板\images\Bird.gif

     文件       3366  2003-10-15 11:13  实例22 分割一个面板\images\Cat.gif

     文件       3587  2003-10-15 11:13  实例22 分割一个面板\images\Dog.gif

     文件       8613  2003-10-15 11:13  实例22 分割一个面板\images\Pig.gif

     目录          0  2008-09-20 10:20  实例22 分割一个面板\images

     目录          0  2008-09-20 10:20  实例22 分割一个面板

----------- ---------  ---------- -----  ----

                28820                    8


评论

共有 条评论