Tag: jlist

更新活动频道的JList时出现问题

介绍: 我创建了一个聊天程序,客户端连接服务器。 客户端能够加入通道,当它们这样做时,jList(请参阅代码)应该通过DefaultListModel更新(getChannel()),并且应该显示连接到同一通道的所有其他客户端。 我知道getChannel(); 工作,因为我已经调试它(并使用systemoutprint)。 我已经有活动频道和用户在线的Jlists,这有效! 🙂 客户端使用回调方法通知连接到服务器的其他客户端。 我已经完成了一些调试,而且我一直在尝试重复我的代码。 inheritance人代码: 服务器: private Hashtable<String, ArrayList> channels = new Hashtable<String, ArrayList>(); public void connectChannel(String username, String channel) throws RemoteException{ setUsername(username); if(isUserRegistered(username)){ if (!channels.containsKey(channel)) { String message = “User ” + username + ” entered the channel”; channels.put(channel, new ArrayList()); channels.get(channel).add(username); notifyChannelSystem(channel, “SYSTEM”, message); notifySelf(username, “Write /? for […]

Java Swing JList,不能设置最小宽度

尝试简单地创建具有指定可见行数但具有最小宽度的JList。 似乎“setMinimumSize()”没有做任何事情…… import java.awt.*; import java.awt.event.*; import javax.swing.*; public class UserInterface { final static private int HEIGHT = 400; final static private int WIDTH = 650; public static void main(String[] args) { JPanel content = new JPanel(); String[] entries = { “Entry 1”, “Entry 2”, “Entry 3”, “Entry 4”, “Entry 5”, “Entry 6” }; DefaultListModel […]

将ListCellRenderer应用于JList上的各个单元格

是否可以将listcellrenderer应用于listcellrenderer中的纯listcellrenderer单元格? 我的代码目前在应用渲染器时工作正常,但我想为每个条目设置不同的动态变量。 抱歉,如果这有点模糊.. 总结一下 – 我想将listcellrenderer只应用于列表中的一个单元格,我该怎么做?

选择列表中的项目,在文本区域中显示文本

我正在研究gui的粗略草案,看看不同的选择。 我正在跳跃使用JList根据选择的项目在JTextArea显示文本。 您可以在左侧看到JList ,在中心看到JTextArea 。 或者有更好的方法吗? 我已经在使用将用于广泛类别的标签。 我看到了CardLayout ,但不太喜欢这个样子。 有小费吗?

将项添加到另一个类的现有jlist中

我有一个使用NetBeans IDE中的Desing模式创建的jList(名为JList1),我想使用一个辅助类向该列表添加项目,该类解析一个大的xml列表并从中获取数据。 我的问题是,我真的不明白如何做到这一点,我已经尝试了很多不同的代码,尝试了一个模型,但不能正确。 我是java(也是编程)的新手,我不明白我是否做过类似的事情 String[] ar = {“one”, “two”, “three”}; JList Jlist1 = new JList(ar); 这创建了一个新的jList而不是使用我已创建的jList,不是吗?

JList:按向上/向下按钮排序

问题:有没有一种简单的方法可以使用jFrame上的向上/向下按钮对jList进行排序? 我的JList存储图像文件的路径,并显示带有文件名的字符串。 我想通过单击向上/向上按钮向下/向上移动元素。 这就是我所做的 – 效果是移动选择(蓝色区域),而不是元素。 Button2是按钮“向上”。 private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { int indexOfSelected = jList1.getSelectedIndex(); File selectedFile = (File) jList1.getSelectedValue(); indexOfSelected = indexOfSelected – 1; jList1.setSelectedIndex(indexOfSelected ); jList1.updateUI(); } 这是JList的创建方式: public void openButtonActionPerformed() { fc.setMultiSelectionEnabled(true); int returnVal = fc.showDialog(null, “Open”); if (returnVal == JFileChooser.APPROVE_OPTION) { file = fc.getSelectedFiles(); len = file.length; System.out.println(len); } for […]

在hover时更改JList项目背景颜色

我正在尝试更改JList单元格的背景颜色,但是我不知道该怎么做。 这是我目前拥有的: package cats.youtube.gui; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Component; import java.awt.Rectangle; import java.awt.event.MouseEvent; import java.util.LinkedList; import javax.swing.AbstractListModel; import javax.swing.DefaultListCellRenderer; import javax.swing.JList; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTextArea; import javax.swing.ListSelectionModel; import javax.swing.border.EmptyBorder; import cats.youtube.search.YoutubeSearchResult; public class SearchResultsList extends JPanel{ private class Renderer extends DefaultListCellRenderer{ public Component getListCellRendererComponent(JList list, Object value, int index, boolean selected, boolean […]

如何设置字体的颜色?

我有一个JList并在该列表中,我想更改以下单词的字体颜色。 有人说我必须使用CellRenderer,但我还不熟悉。 现在,我的问题是如何设置此渲染器来更改字体的颜色? 对此事有何看法? 谢谢…

为什么在通过列表模型更新内容后,我有时会得到空白的JLists?

我有一个反复出现的问题,我有一个JList,我希望用新内容更新。 我正在使用DefaultListModel,它提供了向列表中添加新内容的方法,但是当使用这些方法时,我发现有一部分调用会导致一个完全空白的JList。 更新是否有效似乎是随机的,与发送的数据无关。 下面是一个演示问题的简单程序。 它只是生成一个增加大小的列表来更新JList,但是当运行时,列表内容似乎随机出现和消失。 据我所知,我正在遵循正确的API来做到这一点,但我想我必须有一些基本的东西我不知道。 import java.awt.BorderLayout; import javax.swing.*; public class ListUpdateTest extends JPanel { private JList list; private DefaultListModel model; public ListUpdateTest () { model = new DefaultListModel(); list = new JList(model); setLayout(new BorderLayout()); add(new JScrollPane(list),BorderLayout.CENTER); new UpdateRunner(); } public void updateList (String [] entries) { model.removeAllElements(); for (int i=0;i<entries.length;i++) { model.addElement(entries[i]); } […]

如何将元素添加到现有JList

我的部分代码 ArrayList i = g.getItems(); Vector itemsVector = new Vector(i); JList items = new JList(iemsVector); 稍后在代码中我创建了我想要添加到JList的新对象。 我怎样才能做到这一点?