Colocar un JPanel en un JScrollPane
hola a todos, llevo una semana intentando hacer que funcione el siguiente programa, si alguien puede decirme porque no se mueven las barras....
import java.awt.*;
import javax.swing.*;
public class ventana {
public static void main(String[] args) {
JFrame frame = new frame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
frame.setVisible(true);
}
}
class frame extends JFrame {
MiPanel panel;
frame (){
setSize(300,300);
panel = new MiPanel();
JScrollPane barras = new JScrollPane(panel);
barras.getViewport().setView(panel);
barras.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
barras.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
Container contenedor = getContentPane();
contenedor.add(barras);
}
}
class MiPanel extends JPanel {
MiPanel(){
setLayout(new BoxLayout(this,BoxLayout.LINE_AXIS));
setMaximumSize(new Dimension(300, 300));
setMinimumSize(new Dimension(0, 0));
}
public void paintComponent(Graphics g){
super.paintComponent(g);
setLayout(null);
g.drawRect(50,50,350,350);
revalidate();
}
}
import java.awt.*;
import javax.swing.*;
public class ventana {
public static void main(String[] args) {
JFrame frame = new frame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
frame.setVisible(true);
}
}
class frame extends JFrame {
MiPanel panel;
frame (){
setSize(300,300);
panel = new MiPanel();
JScrollPane barras = new JScrollPane(panel);
barras.getViewport().setView(panel);
barras.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
barras.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
Container contenedor = getContentPane();
contenedor.add(barras);
}
}
class MiPanel extends JPanel {
MiPanel(){
setLayout(new BoxLayout(this,BoxLayout.LINE_AXIS));
setMaximumSize(new Dimension(300, 300));
setMinimumSize(new Dimension(0, 0));
}
public void paintComponent(Graphics g){
super.paintComponent(g);
setLayout(null);
g.drawRect(50,50,350,350);
revalidate();
}
}