多行文本框 (JTextArea) 今天我们主要演示JTextArea。使用说明如下,大家可以多看看说明文档
下面我举例说明:
/** * 测试 QQ对话框 * 多行文本框 JTextArea */ package com.shunping; import java.awt.*; import javax.swing.*; public class Demo8_10 extends JFrame{ //定义小控件 //用来显示对话内容 JTextArea jta1 = null; //用来给JTextArea内容增加滚动条 JScrollPane jsp1 = null; //用来分主界面 JPanel jp1 = null; //选择联系人 JComboBox jcb1 = null; //输入对话内容 JTextField jtf1 = null; //发送按钮 JButton jbt1 = null; public static void main(String[] args) { // TODO Auto-generated method stub Demo8_10 demo8_10 = new Demo8_10(500, 500); } public Demo8_10(int x_dispSize, int y_dispSize) { jta1 = new JTextArea(); jsp1 = new JScrollPane(jta1); //jta1增加滚动条 jp1 = new JPanel(); String chatter[] = {"大哥","三呆","狗妈妈","小狗狗"}; jcb1 = new JComboBox(chatter); //给下拉列表添加你内容 jtf1 = new JTextField(20); //输入框长度 jbt1 = new JButton("发送"); //添加组件到jp1 //jta1.add(jsp1); jp1.add(jcb1); jp1.add(jtf1); jp1.add(jbt1); //这里我们将 jsp1和jp1使用BorderLayout 布局 //因为我们需要给jsp1在放大缩小对话框的时候 //能够跟随对话框放大缩小 //this.add(jsp1, BorderLayout.NORTH); this.add(jsp1, BorderLayout.CENTER); //为了给JTextArea 添加滚动条,当显示内容超过文本框大小时 this.add(jp1,BorderLayout.SOUTH); //用来设置左上角logo图标 this.setIconImage(new ImageIcon("images/QQicon.png").getImage()); //设置窗体大小 this.setSize(x_dispSize, y_dispSize); //设置窗体显示位置 //this.setLocation(300, 400); this.setLocationRelativeTo(null); //居中显示 //禁止用户改变窗体大小 //this.setResizable(false); //设置窗体名字 this.setTitle("QQ 聊天窗口"); //设置关闭窗体的时候,自动关闭虚拟机 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置窗体为visible this.setVisible(true); } }运行结果如下:
这里要注意,不能直接把JScrollPane 添加到 JTextArea。
而是先把JTextArea 放到边界布局的CENTER,这样才能占据对话框的中间绝大部分空间。
然后把JScrollPane添加到 边界布局的CENTER。这样才能有上图右边的滚动条。
