标签: defaultlistmodel

如何将Java Deque <T>转换为DefaultListModel?

我写了一个类(我们称之为Model.java),它包含一个Deque<T>用于入队和出列项的方法.现在我想把它绑定到GUI JList.我对如何以某种方式使用我的"模型"数据 - Deque - 作为JList想要的DefaultListModel感到困惑.我仍然在努力真正获得OO概念,因为它们适用于GUI编程.DefaultListModel文档说明:

此类松散地实现了java.util.Vector API,因为它实现了1.1.x版本的java.util.Vector,没有集合类支持,并在发生更改时通知ListDataListeners.目前它代表一个矢量......

有没有办法让DefaultListModel使用我Deque<T>而不是Vector,从而允许我的Model.java代码保持基本不变,同时免费提供所有的监听/通知行为?或者我是否必须重写Model.java以使用DefaultListModel而不是Deque<T>

java containers defaultlistmodel

3
推荐指数
1
解决办法
212
查看次数

设置为新的DefaultListModel时,JList不会更新

public class MainMenu extends JFrame {
    private JPanel panel,file_list_panel;
    private JPanel contentPane;
    private JMenuBar menuBar;
    private JMenu mnNewMenu1,mnNewMenu2,mnNewMenu3;
    private JMenuItem mt1,mt2,mt3;
    private JPanel right,left ,bottom;
    private JSplitPane spver ,sphor;
    private JTabbedPane tabbedPane;
    private JLabel label;
    private JList<String> list_1;
    private JScrollPane jscroll_list;
    private DefaultListModel listmodel_1 = new DefaultListModel();


    public MainMenu() {




    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    setBounds(0,0,screenSize.width, screenSize.height);
    setExtendedState(getExtendedState() | JFrame.MAXIMIZED_BOTH);
    int intValue = Integer.parseInt( "EEEEEE",16);
    Color aColor = new Color( intValue );
    UIManager.put("TabbedPane.background", new Color(230, 216, 174));
    UIManager.put("TabbedPane.selected", Color.WHITE); 
    UIManager.put("TabbedPane.contentAreaColor",aColor ); …
Run Code Online (Sandbox Code Playgroud)

java swing jlist defaultlistmodel

1
推荐指数
1
解决办法
3406
查看次数

如何在JList java中更改描述图像

下面是我的代码,显示图像JList.我想按照中显示的每个图像编辑描述JList.我不知道该怎么做并且需要帮助.谢谢...

import java.util.*;
import javax.imageio.ImageIO;
import javax.swing.*;
import javax.swing.border.Border;
import java.awt.*;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.Serializable;

public class DesignPicture2 {

    private static String imageName;
    static ArrayList<String> imgName = new ArrayList<String>();

    public static void main(String[] args) throws Exception {
        DesignPicture2 mm = new DesignPicture2();
        mm.getImageName("C:\\Images 2 display");

        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
        JFrame frame = new JFrame("Image panel");
        frame.setSize(800, 500);
        //frame.setLocationByPlatform(true);
        frame.setLocation(600, 300);

        JList imageList = createImageList();

        frame.getContentPane().add(new JScrollPane(imageList));
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); …
Run Code Online (Sandbox Code Playgroud)

java swing jlist defaultlistmodel imageicon

1
推荐指数
1
解决办法
393
查看次数

Java JList格式与JTable的功能

我正在尝试以这样的方式显示患者数据列表,即名称位于我的JList的左侧,并且标识号全部整齐地排列在右侧.我已经查看过甚至为此任务实现了JTable的使用,因为它提供了我希望在这个项目中实现的整洁的列结构,但是有一些功能我要么不知道如何实现,要么我觉得缺乏JTable.

  1. 无法根据字母数字键转换我的列表.这是最终用户快速搜索列表的主要方式,因为填充时它可以超过800行.(例如:输入's'转换到以's开头的列表部分)

  2. 在视觉上我不喜欢JTables的行选择; 使用两列结构显然两列之间存在中断,与JList不同,这是一个很好的平滑无缝突出显示选择.所有网格线都已关闭,以及使用单元格编辑作为FYI.

我已经包含了我认为的相关代码.我希望能有一些方向,如果我要求的是用JList完成的,还是有办法更好地操作JTable?我没有在JTable API和JList API中找到任何内容,我觉得我在这个问题上回答了我的问题.

  package mosaiqToCTWorklist;

import java.awt.Font;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import javax.swing.ButtonGroup;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.border.EmptyBorder;

public class PatientSelectionWindow extends JFrame implements ActionListener {

    private static final long serialVersionUID = 1L;
    private JPanel contentPane;
    private JRadioButton rdbtnActivePatients;
    private JRadioButton rdbtnInactivePatients;
    private JRadioButton rdbtnAllPatients;
    private JButton btnSendSelection;
    private JList<String> patients;
    private JScrollPane …
Run Code Online (Sandbox Code Playgroud)

java jtable jlist defaultlistmodel defaulttablemodel

0
推荐指数
1
解决办法
3471
查看次数