Does anyone know a way to put a JDesktopPane inside a JScrollPane. I
want to develop sort of a virtual desktop that is larger than the
screen, like in many Linux window managers.
Michiel.
This example may give you some ideas:
import java.awt.*;
import javax.swing.*;
import java.util.*;
public class ScrollPaneTest extends JFrame{
public ScrollPaneTest(){
brInit();
}
public void brInit(){
JScrollPane scroll = new JScrollPane();
scroll.setPreferredSize(new Dimension(200,200));
JDesktopPane pane = new JDesktopPane();
pane.setPreferredSize(new Dimension(400,400));
JInternalFrame internal = new JInternalFrame("Frame");
internal.getContentPane().add(new JButton("Test"));
internal.pack();
internal.setVisible(true);
pane.add(internal);
JInternalFrame internal2 = new JInternalFrame("Frame");
internal2.getContentPane().add(new JButton("Test2"));
internal2.pack();
internal2.setVisible(true);
pane.add(internal2);
scroll.getViewport().add(pane);
this.getContentPane().add(scroll);
}
public static void main(String[] args){
ScrollPaneTest frame = new ScrollPaneTest();
frame.pack();
frame.setVisible(true);
}
}
Greetings
Bruno