JTextField txt=new JTextField( columns: 20);
时间: 2023-12-06 07:42:48 浏览: 116
这段代码创建了一个文本框对象,它有 20 个列可见。
具体来说,JTextField 是 Swing 组件库中的一个类,用于创建单行文本框。在这里,我们使用构造函数 JTextField(int columns) 来创建文本框对象,其中参数 columns 指定了文本框可见的列数。在这个例子中,文本框可见的列数是 20。
相关问题
逐句分析public class InsertJPanel extends JPanel implements ActionListener { private JLabel[] jLabel=new JLabel[4]; private String[] s={"学 号:","姓 名:","年 龄:","专 业:"}; private JTextField[] jTextField=new JTextField[4]; private JButton addJButton=new JButton("添加"); public InsertJPanel() { setLayout(new MigLayout( "hidemode 3", // columns "[fill]" + "[fill]" + "[fill]" + "[fill]" + "[fill]", // rows "[]" + "[]" + "[]" + "[]" + "[]" + "[]")); for (int i=0;i<jLabel.length;i++){ jLabel[i]=new JLabel(s[i]); this.add(jLabel[i],"cell 2 "+(i+1)); jTextField[i]=new JTextField(20); this.add(jTextField[i],"cell 4 "+(i+1)); this.add(new JLabel( )); } add(addJButton, "cell 2 5 3 1"); addJButton.addActionListener(this); }
这段代码定义了一个名为 `InsertJPanel` 的类,该类继承自 `JPanel` 并实现了 `ActionListener` 接口。下面是该类的详细分析:
- `private JLabel[] jLabel=new JLabel[4];`:定义一个名为 `jLabel` 的 `JLabel` 数组,长度为 4。
- `private String[] s={"学 号:","姓 名:","年 龄:","专 业:"};`:定义一个包含字符串的数组 `s`,用于存储标签的文本。
- `private JTextField[] jTextField=new JTextField[4];`:定义一个名为 `jTextField` 的 `JTextField` 数组,长度为 4。
- `private JButton addJButton=new JButton("添加");`:定义一个名为 `addJButton` 的按钮,并设置其文本为 "添加"。
- `public InsertJPanel() { ... }`:定义了 `InsertJPanel` 类的构造函数。该构造函数使用 `MigLayout` 布局管理器设置了面板的布局,具体设置如下:
- `"hidemode 3"`:设置隐藏模式为 3。
- `"[fill][fill][fill][fill][fill]"`:设置了 5 列,并且每列都是填充的。
- `"[]\n[]\n[]\n[]\n[]\n[]"`:设置了 6 行,每行都是默认大小的。
- `for (int i=0;i<jLabel.length;i++){ ... }`:使用循环创建标签和文本框,并将它们添加到面板中。具体操作如下:
- `jLabel[i]=new JLabel(s[i]);`:创建 `JLabel`,并将其文本设置为 `s[i]`,即标签的文本。
- `this.add(jLabel[i],"cell 2 "+(i+1));`:将标签添加到面板中,并将其放置在第 2 列、第 `i+1` 行。
- `jTextField[i]=new JTextField(20);`:创建 `JTextField`,并设置其列数为 20。
- `this.add(jTextField[i],"cell 4 "+(i+1));`:将文本框添加到面板中,并将其放置在第 4 列、第 `i+1` 行。
- `this.add(new JLabel( ));`:添加一个空的标签,用于分隔每一行的元素。
- `add(addJButton, "cell 2 5 3 1");`:将按钮添加到面板中,并将其放置在第 2 列、第 5 行,占据 3 列、1 行的位置。
- `addJButton.addActionListener(this);`:为按钮添加一个监听器,用于处理按钮点击事件。
public updateDialog(Frame owner) { super(owner, "查找" , true); that=owner; setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); setBounds(100, 100, 270, 354);//设置了对话框的大小和位置 getContentPane().setLayout(new BorderLayout()); contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel, BorderLayout.CENTER); contentPanel.setLayout(new BorderLayout(0, 0)); { JPanel panel = new JPanel(); contentPanel.add(panel, BorderLayout.WEST); panel.setLayout(new GridLayout(0, 1, 0, 0)); { JLabel label = new JLabel("编号:"); panel.add(label); } { JLabel label = new JLabel("身份证号:"); panel.add(label); } { JLabel label = new JLabel("药品信息:"); panel.add(label); } { JLabel label = new JLabel("价格:"); panel.add(label); } { JLabel label = new JLabel("状态:"); panel.add(label); } } { JPanel panel = new JPanel(); contentPanel.add(panel, BorderLayout.CENTER); panel.setLayout(new GridLayout(0, 1, 0, 0)); { textField_1 = new JTextField(); panel.add(textField_1); textField_1.setColumns(10); } { textField_2 = new JTextField(); panel.add(textField_2); textField_2.setColumns(10); } { textField_3 = new JTextField(); panel.add(textField_3); textField_3.setColumns(10); } { textField_4 = new JTextField(); panel.add(textField_4); textField_4.setColumns(10); } { textField_5 = new JTextField(); panel.add(textField_5); textField_5.setColumns(10); } }
这段代码是一个 Java 类中的构造函数,用于创建一个名为 "查找" 的对话框。该对话框包含了一些标签和文本框,用于输入编号、身份证号、药品信息、价格和状态等信息。
对话框的大小和位置通过 `setBounds` 方法进行设置,布局使用了边界布局(BorderLayout)。对话框的内容面板(contentPanel)的边框也进行了设置。
内容面板中包含了两个面板,分别是位于 WEST 和 CENTER 的面板。WEST 面板使用了网格布局(GridLayout),包含了编号、身份证号、药品信息、价格和状态等标签。CENTER 面板也使用了网格布局,包含了对应的文本框。
每个标签和文本框都被添加到了相应的面板中,并设置了适当的大小和位置。
这段代码还设置了对话框的默认关闭操作为 DISPOSE_ON_CLOSE,表示关闭对话框时只会将其隐藏而不销毁。
阅读全文