📄 textdemo.java
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.event.ActionEvent;
public class TextDemo extends JFrame
implements ActionListener {
private JLabel lbName,lbAddr,lbTel;
private JTextField tfName,tfAddr,tfTel;
private JTextArea taCollect;
private JPanel InputPanel,CollectPanel;
private GridBagLayout InputLayout;
private GridBagConstraints constraints;
private Container container;
public TextDemo() {
super("个人信息");
setSize(300,260);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
container=this.getContentPane();
container.setLayout(new GridLayout(2,1));
}
//以设定的网格包布局向面板中添加组件
private void AddComponent(JPanel panel,GridBagLayout Layout,
GridBagConstraints gbc,Component com,int row,int column,int numRows,
int numColumns,int Weightx,int Weighty){
gbc.gridx=row;
gbc.gridy=column;
gbc.gridwidth=numRows;
gbc.gridheight=numColumns;
gbc.weightx=Weightx;
gbc.weighty=Weighty;
Layout.setConstraints(com,gbc);
panel.add(com);
}
public void setLayout(){
InputPanel=new JPanel();
InputLayout=new GridBagLayout();
constraints=new GridBagConstraints();
InputPanel.setLayout(InputLayout);
//创建姓名标签并添加到输入面板
constraints.anchor=GridBagConstraints.CENTER;
lbName=new JLabel("姓名");
constraints.fill=GridBagConstraints.NONE;
AddComponent(InputPanel,InputLayout,constraints,lbName,0,0,1,1,20,0);
//创建姓名文本框并添加到输入面板
tfName=new JTextField();
constraints.fill=GridBagConstraints.HORIZONTAL;
AddComponent(InputPanel,InputLayout,constraints,tfName,1,0,1,1,80,100);
//创建住址标签
lbAddr=new JLabel("住址");
constraints.fill=GridBagConstraints.NONE;
AddComponent(InputPanel,InputLayout,constraints,lbAddr,0,1,1,1,20,0);
//创建住址文本框
tfAddr=new JTextField();
constraints.fill=GridBagConstraints.HORIZONTAL;
AddComponent(InputPanel,InputLayout,constraints,tfAddr,1,1,1,1,80,100);
//创建电话标签
lbTel=new JLabel("电话");
constraints.fill=GridBagConstraints.NONE;
AddComponent(InputPanel,InputLayout,constraints,lbTel,0,2,1,1,20,0);
//创建电话文本框
tfTel=new JTextField();
tfTel.addActionListener(this);
constraints.fill=GridBagConstraints.HORIZONTAL;
AddComponent(InputPanel,InputLayout,constraints,tfTel,1,2,1,1,80,100);
//添汇总信息面板
CollectPanel=new JPanel();
CollectPanel.setLayout(new BorderLayout());
taCollect=new JTextArea("汇总信息");
taCollect.enable(false);//标止直接对汇总信息编辑
CollectPanel.add(taCollect);
//将输入面板和汇总信息面板添加到框架中
container.add(InputPanel);
container.add(CollectPanel);
}
public static void main(String[] args) {
TextDemo frame = new TextDemo();
frame.setLayout();
frame.show();
}
public void actionPerformed(ActionEvent e) {
if(e.getSource() instanceof JTextField){
//向文本框添加信息
taCollect.append("\n");
taCollect.append(tfName.getText()+"\n");
taCollect.append(tfAddr.getText()+"\n");
taCollect.append(tfTel.getText()+"\n");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -