- Home ›
- Swing ›
- JScrollPaneクラス ›
- HERE
ビューポートでコンポーネントが表示される位置を設定する
広告
ビューポート内でコンポーネントが表示される位置を設定する方法を確認します。
ビューポートの左上の位置にコンポーネントのどの座標(コンポーネントの左上を原点とした場合の座標)を設定します。設定するにはJViewportクラスで用意されている「setViewPosition」メソッドを使います。
setViewPosition public void setViewPosition(Point p)
ビューポートの左上隅に表示されるビューの座標を設定します。ビューがない 場合は何も行いません。 パラメータ: p - 左上の座標を示す Point オブジェクト
引数としてビューポートの左上に表示されるコンポーネントの座標を表すPointクラスのオブジェクトを設定します。Pointクラスについては『Pointクラス』を参照して下さい。
実際の使い方は次のようになります。
JScrollPane scrollpane = new JScrollPane();
JViewport view = scrollpane.getViewport();
ImageIcon icon = new ImageIcon("./img/hana.jpg");
JLabel label = new JLabel(icon);
view.setView(label);
view.setViewPosition(new Point(10, 10));
サンプルプログラム
では簡単なサンプルを作成して試してみます。
import javax.swing.*;
import java.awt.Dimension;
import java.awt.BorderLayout;
import java.awt.Point;
public class JScrollPaneTest10 extends JFrame{
public static void main(String[] args){
JScrollPaneTest10 frame = new JScrollPaneTest10();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(10, 10, 300, 200);
frame.setTitle("タイトル");
frame.setVisible(true);
}
JScrollPaneTest10(){
JScrollPane scrollpane = new JScrollPane();
scrollpane.setPreferredSize(new Dimension(200, 120));
JViewport view = scrollpane.getViewport();
ImageIcon icon = new ImageIcon("./img/hana.jpg");
JLabel label = new JLabel(icon);
view.setView(label);
view.setViewPosition(new Point(50, 50));
JPanel panel = new JPanel();
panel.add(scrollpane);
getContentPane().add(panel, BorderLayout.CENTER);
}
}
上記をコンパイルした後で実行すると次のように表示されます。
ビューポート内に表示されるコンポーネントの位置を変更しています。
( Written by Tatsuo Ikura )
JavaDrive