Я создаю список банковских движений с помощью следующего кода. pane - JPanel
, а массив - ArrayList
, который содержит данные о количестве и описании. Настройка - это маленький значок, который позволяет вам изменять каждое движение.
MouseClass
- класс, который расширяет MouseAdapter
, который я создал, чтобы добавить индекс «k» к методу mouseClicked. Я новичок в программировании java gui. Я хотел бы знать, если есть быстрый способ, чтобы добавить свиток к моей панели
JLabel[] movement = new JLabel[array.size()];
JLabel[] description = new JLabel[array.size()];
JLabel[] data = new JLabel[array.size()];
JLabel[] setting = new JLabel[array.size()];
System.out.println(array.size());
int i = 0;
for(int k=0; k<array.size(); k++){
movement[k] = new JLabel("");
movement[k].setForeground(SystemColor.text);
movement[k].setFont(new Font("Segoe UI", Font.PLAIN, 20));
movement[k].setBounds(17, i, 145, 30);
movement[k].setText(array.get(array.size() - k - 1).getAmount() + "€");
panel.add(movement[k]);
description[k] = new JLabel("");
description[k].setForeground(SystemColor.text);
description[k].setFont(new Font("Segoe UI", Font.PLAIN, 20));
description[k].setBounds(187, i, 274, 30);
description[k].setText(array.get(array.size() - k - 1).getDescription());
panel.add(description[k]);
data[k] = new JLabel("");
data[k].setForeground(SystemColor.text);
data[k].setFont(new Font("Segoe UI", Font.PLAIN, 20));
data[k].setBounds(478, i, 145, 30);
data[k].setText(array.get(array.size() - k - 1).getDate());
panel.add(data[k]);
setting[k] = new JLabel();
setting[k].setIcon(new ImageIcon(List.class.getResource("/it/andreavaiuso/financemanager/images/edit.png")));
setting[k].setForeground(SystemColor.text);
setting[k].setFont(new Font("Segoe UI", Font.PLAIN, 20));
setting[k].addMouseListener(new MouseClass(array.size() - k - 1) {
@Override
public void mouseClicked(MouseEvent arg0) {
Modify mdf = new Modify(this.index);
mdf.setVisible(true);
dispose();
}
});
setting[k].setBounds(640, i, 82, 30);
panel.add(setting[k]);
i += 40;
}
Но я не знаю, как для прокрутки. Я пробовал JScrollPane, но не работает! Я уверен, что есть простой способ, чтобы добавить эти элементы к моей панели ...
Добавить JScrollPane. Добавьте JPanel в JScrollPane вместо JFrame. – Compass
* «Я пробовал JScrollPane, но не работает!» * Добавьте свою попытку на пример кода –