如何在Java中的JTextArea类中添加滚动条?
首先,我知道如何在JTextArea中添加滚动条如何在Java中的JTextArea类中添加滚动条?,java,swing,scrollbar,jtextarea,Java,Swing,Scrollbar,Jtextarea,首先,我知道如何在JTextArea中添加滚动条 JTextArea textarea = new JTextArea(); JScrollPane scrollbar = new JScrollPane(textarea); 但在下面的JTextArea类代码中 public class MyTextArea extends JTextArea { public MyTextArea() { setEditable(true); setS
JTextArea textarea = new JTextArea();
JScrollPane scrollbar = new JScrollPane(textarea);
但在下面的JTextArea类代码中
public class MyTextArea extends JTextArea
{
public MyTextArea()
{
setEditable(true);
setSize(500, 500);
//JScrollPane scroll = new JScrollPane(this);
// ...
}
}
如何添加滚动条?我尝试使用JScrollPane,但没有成功。我尝试了一种新方法,但也没用
这是我的JFrame课程
public class MyFrame extends JFrame
{
MyFrame()
{
setLayout(null);
setTitle("Frame Title");
setSize(600, 600);
MyTextArea mytextarea = new MyTextArea();
add(mytextarea);
setVisible(true);
setDefaultCloseOperation(MyFrame.EXIT_ON_CLOSE);
}
}
还有我的主菜
public static void main(String[] args)
{
new MyFrame();
}
在您发布的示例中,您没有在JTextArea中添加滚动条,而是将JTextArea添加到JScrollPanel中 此外,如果您没有实际扩展一个类,则最好创建该类的实例并修改它们,但如果您打算这样做,则可以执行以下操作:
public class MyTextArea extends JScrollPanel{
public JTextArea ta = new JTextArea();
public MyTextArea(){
ta.setEditable(true);
ta.setSize(500, 500);
setViewPortView(ta);
}
}
在您发布的示例中,您没有在JTextArea中添加滚动条,而是将JTextArea添加到JScrollPanel中 此外,如果您没有实际扩展一个类,则最好创建该类的实例并修改它们,但如果您打算这样做,则可以执行以下操作:
public class MyTextArea extends JScrollPanel{
public JTextArea ta = new JTextArea();
public MyTextArea(){
ta.setEditable(true);
ta.setSize(500, 500);
setViewPortView(ta);
}
}
只需将JTextArea包装在JScrollPane中
当组件的内容大于滚动窗格的可视区域时,将显示滚动条
你真正需要问的问题是,你为什么要扩展这个领域?只需将JTextArea包装在JScrollPane中,即可查看更多详细信息
当组件的内容大于滚动窗格的可视区域时,将显示滚动条
你真正需要问的问题是,你为什么要扩展这个领域?查看更多详细信息默认情况下,只有当组件的大小超过滚动窗格可查看区域的大小时,才会显示滚动条。默认情况下,只有当组件的大小超过滚动窗格可查看区域的大小时,才会显示滚动条。setViewportView将整个框架设置为文本区域。@LordRixuel即可能是由于您将此组件添加到的布局造成的。setViewportView使整个框架成为文本区域。@LordRixuel这可能是由于您将此组件添加到的布局造成的。