どのように私は、フレームにスクロールすると移動していることのJButtonを持っていますか?

Gaurav Agarwalさん:

私は、フレームにスクロールをしたパネルを持っています。私に必要なのは、私がスクロールしても、右下隅に滞在が固定というボタンを追加することです。私はすべて、私が得ることができることを任意の助けをいただければ幸いJavaのスイングに新たなんです。

mainPanel = new SimulationPanel(); //class SimulationPanel extends JPanel

//making mainPanel scrollable
mainPanel.setPreferredSize(new Dimension(((int)(WIDTH*1.2)), HEIGHT));
JScrollPane scrollPane = new JScrollPane(mainPanel);
scrollPane.setViewportView(mainPanel);

// Settings for JFrame
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
frame = new JFrame("Warehouse Simulator");
frame.setContentPane(scrollPane);
frame.setSize(screenSize.width, screenSize.height);
frame.setResizable(true);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setVisible(true);
ステファン:

私はBoxLayoutのために行くだろう。あなたが最初にあなたのscrollingPanelを入れ、その後、あなたがボタンを追加した別のパネル(metaPanel)を追加します。代わりのcontentPaneとしてscrollingPanelをusgin、あなたはmetaPanelを使用しています。例(例は動作しますが、あなたは、インタフェースルック素敵を作ってそれを修正する必要があります):

    JPanel mainPanel = new JPanel();
    JScrollPane scrollPane = new JScrollPane(mainPanel);
    scrollPane.setViewportView(mainPanel);

    JPanel metaPanel = new JPanel();
    BoxLayout boxlayout = new BoxLayout(metaPanel, BoxLayout.Y_AXIS);
    metaPanel.setLayout(boxlayout);
    metaPanel.add(scrollPane);
    metaPanel.add(new JButton("button"));

    // Settings for JFrame
    frame = new JFrame("Warehouse Simulator");
    frame.setContentPane(metaPanel); // Put metaPanel here
    frame.setSize(500, 300);
    frame.setResizable(true);
    frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    frame.setVisible(true);

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=283889&siteId=1