Hi,
ich habe ein Klasse, welche JComponent erweitert und Scrollable implementiert. Nun habe ich die Methode paint(Graphics g) überschrieben, kräftig Icons hineingemalt und etwas Text geschrieben. Das ganze Objekt habe ich dann in den Konstruktor von JScrollPane gegeben.
Die Methoden von Scrollable habe ich so implementiert:
this._m_nPreferredHeight ist die die y-Koordinate von dem untersten Strich.
this._m_nWidth ist die Breite.
this._m_nMaxUnitIncrement = 1
Als erstes hatte ich bei den oberen 2 Methoden als Rückgabewert "final boolean", jedoch ist dann das Programm jedesmal abgestürzt.
So wie es dort ist, werden die Scrollbalken angezeigt, jedoch kann man nicht Scrollen, als ob zu wenig Inhalt darin wäre, was aber definitif nicht so ist.
Was muss ich machen, dass ich mit den Scrollbalken noch scrollen kann?
Mfg
ich habe ein Klasse, welche JComponent erweitert und Scrollable implementiert. Nun habe ich die Methode paint(Graphics g) überschrieben, kräftig Icons hineingemalt und etwas Text geschrieben. Das ganze Objekt habe ich dann in den Konstruktor von JScrollPane gegeben.
Die Methoden von Scrollable habe ich so implementiert:
Code:
public boolean getScrollableTracksViewportWidth() {
return true;
}
public boolean getScrollableTracksViewportHeight() {
return true;
}
public Dimension getPreferredScrollableViewportSize() {
return new Dimension(this._m_nWidth,this._m_nPreferredHeight);
}
public int getScrollableUnitIncrement(Rectangle visibleRect,int orientation,int direction) {
return this._m_nMaxUnitIncrement;
}
public int getScrollableBlockIncrement(Rectangle visibleRect,int orientation,int direction) {
if (orientation == SwingConstants.HORIZONTAL) {
return visibleRect.width - this._m_nMaxUnitIncrement;
} else {
return visibleRect.height - this._m_nMaxUnitIncrement;
}
}
this._m_nPreferredHeight ist die die y-Koordinate von dem untersten Strich.
this._m_nWidth ist die Breite.
this._m_nMaxUnitIncrement = 1
Als erstes hatte ich bei den oberen 2 Methoden als Rückgabewert "final boolean", jedoch ist dann das Programm jedesmal abgestürzt.
So wie es dort ist, werden die Scrollbalken angezeigt, jedoch kann man nicht Scrollen, als ob zu wenig Inhalt darin wäre, was aber definitif nicht so ist.
Was muss ich machen, dass ich mit den Scrollbalken noch scrollen kann?
Mfg