0

如何在不使用 mouseListener 创建新对象的情况下在 JLabel 中添加多个字符串,并且我希望它在块中显示 Stringsg 列表,但它始终显示内联。

我的问题是每次我有一个字符串我需要创建一个新的 JLabel 对象?顺便说一句,我有一个有很多名字的数据库,创建很多 JLabel 会很困难。

这是图片 点击这里

这是我当前的代码与对象我有一个数据库,它获取名称字符串,然后添加到 JPanel。

 x = new JLabel("name1");
      x1 = new JLabel("name2");
     x.setFont(new Font("calibri",Font.BOLD,20));
    x.addMouseListener(new MouseListener(){

        @Override
        public void mouseClicked(MouseEvent arg0) {         
        }

        @Override
        public void mouseEntered(MouseEvent arg0) { 
            x.setForeground(Color.blue);
        }

        @Override
        public void mouseExited(MouseEvent arg0) {
            x.setForeground(Color.BLACK);

        }

        @Override
        public void mousePressed(MouseEvent arg0) {
            x.setForeground(Color.RED);             
        }

        @Override
        public void mouseReleased(MouseEvent a) {
            x.setForeground(Color.blue);

        }});
    add(x);
    add(x1);
4

2 回答 2

3

听起来您正在寻找更好的控件。JList 呢?

http://docs.oracle.com/javase/tutorial/uiswing/components/list.html

于 2013-05-01T20:03:30.260 回答
1

您可以在 Swing 按钮、菜单按钮、标签等中使用 HTML 格式。设置文本时只需使用 html 标记。

于 2013-05-01T20:48:46.310 回答