Java6学习笔记4——利用Swing开发文本框

import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.JButton;
import java.awt.Container;
import java.awt.Insets;
import java.awt.Dimension;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;

public class AreaDemo extends JFrame implements ActionListener {
JTextArea area;
public static void main(String arg[]) {
new AreaDemo();
}
public AreaDemo() {
int height;
int width;
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
} );
setLocation(250,150);
Container pane = getContentPane();//返回一个容器的引用,可用于在其中显示文本框
pane.setLayout(null);//用来定义布局管理器用的一种方法,设置为null为不使用任何布局管理器
Insets insets = pane.getInsets();//Insets定义了构件离容器四边的最小距离

area = new JTextArea(12,40);//定义了文本框
Dimension areaDim = area.getPreferredSize();//返回的是Swing尽量安排(并不保证)控件的尺寸。

int x1 = insets.left + 20;//定义x1,y1坐标
int y1 = insets.top + 20;
area.setBounds(x1,y1,areaDim.width,areaDim.height);////设置文本框 显示位置和大小,位置从左上角算起
pane.add(area);//将这个设置好的文本框加入容器中

width = x1 + areaDim.width + 20 + insets.left;

JButton button= new JButton("Enter");
Dimension buttonDim = button.getPreferredSize();
int x2 = (width - buttonDim.width) / 2;
int y2 = y1 + areaDim.height + 20;
button.setBounds(x2,y2,buttonDim.width,buttonDim.height);
button.addActionListener(this);
pane.add(button);

height = y2 + buttonDim.height + 40 + insets.bottom;

setSize(width,height);
setVisible(true);
}
public void actionPerformed(ActionEvent e) {
System.out.println(area.getText());
System.exit(0);
}
}

你可能感兴趣的:(java,swing)