Я столкнулся с проблемой и не могу ее исправить.Java ScrollPane И JList
Я сделал два списка, list1
содержит и массив, который инициализирован вне конструктора, и list2
ничего не имеет.
Одна из проблем, я действительно не могу показаться, чтобы исправить это, когда я выбираю слово в list1
, нажав на кнопку добавления, отображается в list2
, но по какой-то странной причине каждый раз, когда я пытаюсь выбрать другое значение в list1
, он заменяет значение, которое уже было в list2
. Я пробовал все и ничего не работал.
Другая проблема, которая возникает, есть в list2
, когда я набираю слово длиннее ширины списка, все слово не отображается. Он показывает только пару слов и три точки в конце слова. У меня есть панель прокрутки, установленная в ней.
Может ли кто-нибудь помочь мне на этом? ???
private String[] c = {"blue","white","cyan","darkGray","green","gray","black,"d","purple","orange","cyan"};
public lala(){
model = new DefaultListModel();
list1 = new JList(c);
list1.setVisibleRowCount(10);
list1.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
b2 = new JButton("ADD");
b2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
list.setListData(list1.getSelectedValues());
}
});
b3 = new JButton("MOVE-->>");
b3.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
model.addElement(field.getText());
list.setModel(model);
field.setText("");
}
});
list2 = new JList();
list2.setFixedCellHeight(50);
list2.setFixedCellWidth(50);
list2.setVisibleRowCount(10);
list2.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
scroll = new JScrollPane(list2);
scroll.setPreferredSize(new Dimension(150,150));
field = new JTextField(19);
field.setToolTipText("Input Text Area Here");
field.setFont(new Font("Courier",Font.BOLD,20));
field.setBackground(Color.BLACK);
field.setForeground(Color.RED);
field.setDragEnabled(true);
panel = new JPanel();
panel.setBackground(Color.BLACK);
panel.add(b3);
panel.add(b2);
panel.add(field);
panel.add(new JScrollPane(list1));
panel.add(scroll);
add(panel);
}
}
Ваш вопрос не очень понятен.Пожалуйста, предоставьте полный код, затем я могу решить вашу проблему. – STaefi
Кстати, вы пропустите совсем после «черного». – Mordechai