w jaki spsosb zaladowac do JScrollPane klase extend JPanel w ktorej tworze dokument. Wiem ze trzeba jakos zapisac i podac przy tworzeniu JScrollPane tylko nie bardzo wiem jak to zrobic.
public Test() {
super();
Container container = getContentPane();
canvas = new DrawingCanvas();
JScrollPane prv = new JScrollPane(canvas);
prv.setVerticalScrollBarPolicy (javax.swing.JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
container.add(prv);
...
...
...
}
class DrawingCanvas extends JPanel {
Font font14;
Font font10;
Font font8;
Image obraz ;
FontMetrics fontMetrics;
int w, h;
DrawingCanvas() {
setBackground(Color.white);
obraz =Toolkit.getDefaultToolkit().getImage("logo.png");
font14 = new Font("Dialog", Font.BOLD, 14);
fontMetrics = getFontMetrics(font14);
font10 = new Font("Dialog", Font.BOLD, 10);
fontMetrics = getFontMetrics(font10);
font8 = new Font("Dialog", Font.BOLD, 8);
fontMetrics = getFontMetrics(font8);
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2D = (Graphics2D) g;
paintContent(g2D, w, h);
}
public void paintContent(Graphics2D g2D, int w, int h) {
g2D.setColor(Color.black);
g2D.setFont(font14);
g2D.drawImage(obraz,75,50,this);
g2D.drawString("jakis napis", 345,85);
...
...
...
}
wszysko jest OK, ale nie mozna przewinac obrazu, bo nie ma suwaka ;)