0

2 つの内部フレームを持つフレームがあります。Board クラスのインスタンスである「Board」オブジェクトを作成します。Board クラスは JPanel を拡張します。

class Layout extends JFrame{
   Dimension dimen=Toolkit.getDefaultToolkit().getScreenSize();
   public initializeWindows(){
       JInternalFrame dev=new JInternalFrame("Devices",true,true,false,false);
       JInternalFrame cir=new JInternalFrame("Circuit",true,true,false,false);
       Board b=new Board();
       cir.add(b);
       JScrollPane scroll=new JScrollPane(b);
       this.add(dev);
       this.add(cir);

       dev.setVisible(true);
       dev.setSize(150,650);
       dev.setLocation(0,100);
       dev.pack();

       inf.setVisible(true);
       inf.setPreferredSize(new Dimension((int)(dimen.width*0.88),(int)(dimen.height*0.75)));
       inf.setLocation(150,100);
       inf.setBackground(Color.WHITE);
       inf.pack();

   }

しかし、スクロールペインは表示されません。なぜタットですか??

4

2 に答える 2

1

JScrollPane内部フレームにを追加していないためです。

あなたは実際にとに追加しBoardていますがJInternalFrame cirJScrollPaneあなたは次のようなことをする必要があります

JInternalFrame cir=new JInternalFrame("Circuit",true,true,false,false);
Board b=new Board();
JScrollPane scroll=new JScrollPane(b);
cir.add(scroll)
this.add(cir);
于 2012-04-08T18:39:44.283 に答える
1

の代わりにcir.setVisible(true)andを設定してくださいcir.add(scroll)cir.add(b);

スクロールバーを常に表示したい場合は、次を使用できます

scroll = JScrollPane(b,
  ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,
  ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS)
于 2012-04-08T19:49:17.250 に答える