Итак, у меня есть этот JFrame, содержащий JPanel, и там я добавляю JLabels с информацией, которую хочу, но так как я буду добавлять метки все время, в какой-то момент текст слишком длинный, чтобы появиться, поэтому я хочу добавить полосу прокрутки. В принципе, я хочу сделать свой JFrame с JPanel в нем прокручиваемым. У меня есть этот код, но моя проблема в том, что даже если появится полоса прокрутки, но она не движется и на самом деле не работает, когда текст много, то есть текст все равно вырезается, а полоса прокрутки там не перемещается. Кто-нибудь знает, как это исправить?Как сделать Jframe с прокруткой Jpanel?
import javax.swing.*;
import java.awt.*;
import java.util.*;
public class Bar {
JFrame info = new JFrame("Information");
JLabel ballinf = new JLabel();
JPanel contentPane = new JPanel();
JScrollPane scrolling = new JScrollPane();
public Bar(){
contentPane.setOpaque(true);
contentPane.setBackground(Color.WHITE);
contentPane.setLayout(null);
scrolling = new JScrollPane(contentPane,JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
info.add(scrolling);
info.setSize(750, 600);
info.setLocationByPlatform(true);
info.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
info.setVisible(true);
}
public void adding(int pos){
ballinf = new JLabel("Something ",JLabel.CENTER);//assume the text will be bigger here and have more info
ballinf.setSize(700, 30);
ballinf.setForeground(Color.green);
ballinf.setLocation(5, 5+pos);
contentPane.add(ballinf);
info.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
info.setVisible(true);
}
public static void main(String[] args){
Bar stats = new Bar();
stats.adding(0);
stats.adding(20);//this will be done in a for loop for more than 2 times so the text ends up to be a lot
}
}
должны перепроверить и перекрашивать можно назвать? – DarkV1
, так что тогда я должен просто удалить команду setLayout (null)? – helpme
@helpme, вы попробовали? – camickr