在Netbeans可视化编辑器中添加JScrollPane

时间:2012-10-30 08:58:53

标签: java swing netbeans

我使用Netbean的可视化编辑器设计了一个窗口。现在,我有一个JTextField,我想用滚动条添加它。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

使用JTextArea并将其放入JScrollPane。如果您使用可视化编辑器,它将默认完成(将TextArea放入您的窗口)。 JScrollPane有两个属性:horizo​​ntalScrollBarPolicy和verticalScrollBarPolicy。将这两个属性设置为ALWAYS,您将看到滚动条。

答案 1 :(得分:1)

您不应该将Scollbar添加到TextField.TextField用于输入用户的小条目,如姓名,年龄,滚动号等。从用户输入大型文本(如评论)的最佳组件是JTextArea.So您必须添加JTextArea而不是JTextField。

将JTextArea添加到JFrame后,您可以编写几行代码: -

JScrollPane jsc=new JScrollPane();
jsc.add(jta);

其中'jta'是您的Netbeans为您生成的JTextArea的名称。

(现在,当您添加大于文本区域限制大小的文本时,将显示滚动条。 如果您希望滚动条永久显示,那么JScrollPane有两个属性:horizo​​ntalScrollBarPolicy和verticalScrollBarPolicy。将这两个属性设置为ALWAYS,您将看到滚动条始终与JTextArea中的文本大小无关。)

以下是完整的代码,用于演示您可以执行的操作: -

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

class TextAreaDemo
{
JTextArea jta;
TextAreaDemo()
{
JFrame jfrm=new JFrame("Text Area");
jfrm.setSize(200,300);
jfrm.getContentPane().setLayout(new FlowLayout());
jfrm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jta=new JTextArea("Type Here");

//You can use this line to wrap that text when it extends on right side.
//jtxt.setLineWrap(true);


JScrollPane jscrp=new JScrollPane(jta);
jscrp.setPreferredSize(new Dimension(180,100));
jscrp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);


jfrm.add(jscrp);
jfrm.setVisible(true);

}

public static void main(String args[])
{
 SwingUtilities.invokeLater(new Runnable(){public void run(){new TextAreaDemo();}});
}
}