1

スクロールバーを追加したいのですが、JTextArea表示されません。私はフォーラムでたくさんのことを読んだことがありますが、すべて無駄です。どんな提案でも大歓迎です。前もって感謝します。以下は私のコードです。

JPanel pan, pan2;
JTextArea text = new JTextArea();
JTextField fname = new JTextField(18);
JLabel filename = new JLabel("Filename");
JButton view = new JButton("View");
public FileReading() {
    setLayout(new BorderLayout());
    pan = new JPanel();
    pan2 = new JPanel();
    JScrollPane scroll = new JScrollPane(text);
    //scroll.setBounds(400,400,400,400);
    scroll.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
    text.setEditable(false);
    scroll.setViewportView(text);
    pan2.add(scroll);
    //scrollpane.setViewportView(text);
    pan2.setLayout(new BorderLayout());
    //pan2.add(scrollpane);
    pan.setLayout(new FlowLayout());
    pan.add(filename, FlowLayout.LEFT);
    pan.add(fname, FlowLayout.CENTER);
    pan.add(view, FlowLayout.RIGHT);
    view.addActionListener(this);
    fname.addActionListener(this);
    pan2.add(text, BorderLayout.CENTER);
    pan2.add(pan, BorderLayout.SOUTH);
    //BorderLayout.EAST
    //add(pan, BorderLayout.SOUTH);
    add(pan2);//, BorderLayout.CENTER
    setVisible(true);
}

public static void main(String args[]) {
    FileReading frame = new FileReading();
    frame.setTitle("Enter The Full Path to the File");
    frame.setVisible(true);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setBounds(400,400,400,400);
    //frame.setSize(400,400);
}
4

2 に答える 2

1

(JTextArea)ではなくscroll(JScrollPane)を追加する必要がありますこれを試してくださいpan2text

pan2.add(scroll, BorderLayout.CENTER);

代わりにpan2.add(text, BorderLayout.CENTER);

編集

JTextArea内部に(JTextArea)を追加したようJScrollPaneに、パネルに追加すると自動的に追加されますtextJScrollPane

ここ->JScrollPane scroll = new JScrollPane(text);

于 2012-12-07T11:05:09.530 に答える
0

これを試すことができます

add(scroll);//, BorderLayout.CENTER
add(pan, BorderLayout.SOUTH);

それ以外の

add(pan2);//, BorderLayout.CENTER

このようにして、スクロールペインをメインフレームに直接追加し、他のものを下に配置します

于 2012-12-07T11:04:50.430 に答える