标签: jlist

双击JList元素上的事件

我有JList一个DefaultListModel.

如何在JList双击事件的反应中制作一个项目?

java swing jlist defaultlistmodel

69
推荐指数
3
解决办法
7万
查看次数

Java swing弹出菜单和jlist

这是我的问题:我有一个jList和一个弹出菜单.当我右键单击jList时,弹出菜单显示.问题是鼠标指向的jList项目不会选择.我希望它能做到这一点.当我将光标指向列表中的某个项目并按下右键时,我想要发生两件事.选择我单击的项目并显示弹出菜单.

我试过这个:

jLists.addMouseListener(new MouseAdapter() {

     @Override
     public void mousePressed(MouseEvent e) {
            jList.setSelectedIndex(jList.locationToIndex(e.getPoint()));
     }
});

jList.setComponentPopupMenu(jPopupMenu);
Run Code Online (Sandbox Code Playgroud)

但它只显示弹出菜单.如果我删除这一行:

jList.setComponentPopupMenu(jPopupMenu);
Run Code Online (Sandbox Code Playgroud)

然后右键单击选择工作(但弹出菜单不显示).

那么,您认为使这两个功能(两者)都起作用的最佳方法是什么?

谢谢,抱歉我的英语.

java swing menu popup jlist

21
推荐指数
2
解决办法
2万
查看次数

当通过鼠标更改值时,JList会触发valueChanged两次

我最近遇到了一个java中的错误,其中JList在使用鼠标更改值时将触发valueChanged()方法两次,并且在使用键盘更改值时仅触发一次.我刚刚在Oracle的网站上发现了一个关于此问题的错误(显然,这个错误超过了12年),我想知道是否有人可以向我解释为什么Oracle已经确定这不是缺陷(更不用说getValueIsAdjusting()在使用键盘时返回false.

对于有这个问题的任何人,我发现只是检查何时getValueIsAdjusting()是假的,然后运行我的方法的其余部分将解决问题.

java swing jlist java-7 listselectionlistener

21
推荐指数
2
解决办法
1万
查看次数

ListSelectionListener被调用两次

class MyListListener implements ListSelectionListener {

      public void valueChanged (ListSelectionEvent e) {
           JList source = (JList) e.getSource();
           // do something
      }
}

JList myList = new JList (myModel);  
myList.addListSelectionListener (new MyListListener());
Run Code Online (Sandbox Code Playgroud)

我做的很简单.我有一个JList.如果选择了列表中的项,则调用该处理程序.问题是当我从一个项目转到另一个项目时,处理程序被调用两次.如果第一个触发器传递原始选定项目,我可以看到使用,第二个触发器传递新项目.但是两次都传递了相同的新项目.那是什么意思?有没有办法阻止处理程序被调用两次?

java swing jlist listselectionlistener

21
推荐指数
2
解决办法
1万
查看次数

Java JList滚动到所选项目

我有一个JList很多项目,其中一个被选中.我想滚动到JList此处的所选项目,以便用户可以快速查看选择了哪个项目.

我怎样才能做到这一点?

String[] data = {"one", "two", "three", "four", /* AND A LOT MORE */};
JList dataList = new JList(data);
JScrollPane scrollPane = new JScrollPane(dataList);
Run Code Online (Sandbox Code Playgroud)

java swing scroll jlist

20
推荐指数
3
解决办法
2万
查看次数

刷新JFrame中的JList

我有一个显示向量信息的JList.然后,用户可以添加和删除此向量中的信息.当从Vector中添加/删除项目时,是否可以刷新JFrame中的JList?目前我正在做..

 list = new JList(names);
 jframe.add(new JScrollPane(list), BorderLayout.CENTER);
Run Code Online (Sandbox Code Playgroud)

但这并没有将JList刷新为任何新东西.我检查,我的矢量内容等确实改变了但列表没有刷新.为什么?我该怎么解决?

java swing jlist

20
推荐指数
2
解决办法
6万
查看次数

JList - 选择多个项目

当我想要自动选择多个值时,我遇到了这个setSelectedValue()方法的问题,它仍然只选择了一个.有办法吗?JListJList

 String[] items = { "Item 1", "Item 2", "Item 3", "Item 4" };
      final JList theList = new JList(items);
      theList.setSelectedValue("Item 1",true);
      theList.setSelectedValue("Item 2",true);
Run Code Online (Sandbox Code Playgroud)

此代码仅显示Item 2为已选中.

java swing netbeans jlist multi-select

16
推荐指数
1
解决办法
4万
查看次数

如何在java中的某个事件上取消选择Jlist项

任何人可以建议我在java中的任何方法或任何其他方式,我可以在某些事件发生时取消选择我的jlist项目?我试过这个,但这似乎不起作用

myJList.setSelectedIndex(-1);
myJList.ensureIndexIsVisible(-1);
Run Code Online (Sandbox Code Playgroud)

java swing selection jlist

15
推荐指数
1
解决办法
2万
查看次数

查找JList的所选项目并实时显示

我有一个JList,我正在显示一些ID.我想捕获用户点击的ID并在其上显示JLabel.

String selected = jlist.getSelectedItem().toString();
Run Code Online (Sandbox Code Playgroud)

上面的代码给出了我选择的JList值.但是这个代码必须放在一个按钮事件中,当我点击按钮时,它将获得JList值并将其分配给JLabel.

但是,我想要做的是,只要用户点击一个项目JListJLabel实时更新.(无需单击按钮即可触发操作)

java swing jlist

15
推荐指数
3
解决办法
7万
查看次数

JScrollPane和JList自动滚动

我有下一个代码:

    listModel = new DefaultListModel();
    listModel.addElement(dateFormat.format(new Date()) + ": Msg1");
    messageList = new JList(listModel);
    messageList.setLayoutOrientation(JList.VERTICAL);

    messageScrollList = new JScrollPane(messageList);
    messageScrollList.setPreferredSize(new Dimension(500, 200));

    messageScrollList.getVerticalScrollBar().addAdjustmentListener(new AdjustmentListener() {  
        public void adjustmentValueChanged(AdjustmentEvent e) {  
            e.getAdjustable().setValue(e.getAdjustable().getMaximum());  
        }
    }); 
Run Code Online (Sandbox Code Playgroud)

它会自动向下滚动.但是,如果我尝试向上滚动以重新阅读消息,则会强制向下滚动.我怎样才能解决这个问题?

java swing jscrollpane jlist autoscroll

14
推荐指数
1
解决办法
2万
查看次数