我已经创建了JFields数组;
JFields[] field = new JField[5];
for(int j = 0; i < 5; i++) {
field[j] = new JField();
}
我要做的是给数组中的每个项一个名称,例如field1、field2、field3、field4、Field5。
String[] field = {field1, field2, field3, field4, field5}
field[j] = {field1, field2, field3, field4, field5}
谢谢
这就是你的数组的作用。因为您有一个名为fields的JTextField数组,所以您已经为数组中的项(如Field[2]和Field[3])指定了“名称”,所以这里不需要给变量指定“名称”。
你说:
我尝试了例如字段[0]或字段[1]等,但都不起作用。
编辑
例如:
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import javax.swing.*;
@SuppressWarnings("serial")
public class TextFieldFun extends JPanel {
public static final int TEXT_FIELD_COUNT = 8;
private static final int COLS = 10;
// array of JTextFields
private JTextField[] fields = new JTextField[TEXT_FIELD_COUNT];
// JTextField used to enter text to go into one of the array item fields
private JTextField enterField = new JTextField(COLS);
// spinner to choose which fields item to have its text set
private JSpinner fieldIndexSpinner = new JSpinner(new SpinnerNumberModel(0, 0, TEXT_FIELD_COUNT - 1, 1));
public TextFieldFun() {
// JPanel to hold the array of fields
JPanel textFieldPanel = new JPanel(new GridLayout(0, 1));
for (int i = 0; i < fields.length; i++) {
// create field items for array
fields[i] = new JTextField(COLS);
fields[i].setEditable(false);
fields[i].setFocusable(false);
JPanel rowPanel = new JPanel();
rowPanel.add(new JLabel("Field " + i + ":"));
rowPanel.add(fields[i]); // and put into a JPanel
textFieldPanel.add(rowPanel); // put JPanel into grid layout using JPanel
}
EnterAction enterAction = new EnterAction();
enterField.setAction(enterAction);
JPanel bottomPanel = new JPanel();
bottomPanel.add(new JLabel("Row to Change:"));
bottomPanel.add(fieldIndexSpinner);
bottomPanel.add(new JLabel("Text:"));
bottomPanel.add(enterField);
bottomPanel.add(new JButton(enterAction));
setLayout(new BorderLayout());
add(textFieldPanel, BorderLayout.CENTER);
add(bottomPanel, BorderLayout.SOUTH);
}
private class EnterAction extends AbstractAction {
public EnterAction() {
super("Enter");
}
@Override
public void actionPerformed(ActionEvent e) {
// get the text from the enterField JTextField
String text = enterField.getText();
// get the int from the JSpinner
int index = ((Integer)fieldIndexSpinner.getValue()).intValue();
// set the JTextField in the array whose index matches that of the spinner value
fields[index].setText(text);
}
}
private static void createAndShowGui() {
TextFieldFun mainPanel = new TextFieldFun();
JFrame frame = new JFrame("TextFieldFun");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(mainPanel);
frame.pack();
frame.setLocationByPlatform(true);
frame.setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
}
}
问题内容: 当我在名为$ tags的变量(多维数组)上进行var_dump时,会得到以下信息: 我想将所有名为“ url”的数组键重命名为“值”。什么是做到这一点的好方法? 问题答案: 您可以用来做。
问题内容: 我想将数组转换为Java中的Set。有一些明显的方法可以做到这一点(例如,使用循环),但是我想要一些更整洁的东西,例如: 有任何想法吗? 问题答案: 像这样: 在Java 9+中,如果设置不可修改,则可以: 在Java 10+中,可以从数组组件类型推断出泛型类型参数:
问题内容: 我正在寻找一种在MySQL中为数据库命名的方法。原因是能够重命名实时生产数据库而不会导致系统停机。我想可以将数据库别名为新名称,随意更改和部署连接到数据库的代码,并最终删除旧别名。 如果有更好的方法可以做到这一点,请告诉我。 问题答案: https://dev.mysql.com/doc/refman/5.7/en/symbolic-links-to- databases.html 说
问题内容: 我想像djangoproject.com上的这张票一样执行相同的操作,但是具有一些附加格式。从这个查询 我想得到这样的东西: 是否有另一种更内置的方法,还是我必须手动执行此操作? 问题答案: 这有点hacky,但是你可以使用以下extra方法: 这基本上是在SQL中完成的。 如果你始终想要重命名的版本,但是数据库具有神秘名称,则另一种选择是使用新名称命名字段,但用于db_column引
下面是一个java类CreateDoc,它从一个作为生产者端的web服务发送到另一个作为消费者端的web服务,其内容类型为:json 下面是类表示 一旦我在消费者端接收到作为json的列表,我就不能将其用作java对象,并且内容类型是数组,其中json嵌套在数组中。 以下是代表: 问题是如何处理这一点,并能够使用数据和表示为列表。
问题内容: 我有一个Java项目,可以在Eclipse上正常运行。现在,我需要使用命令行来运行它,例如java classpath …如何在Eclipse中基于存储的类路径来设置该类路径。 问题答案: 只需导航到类文件所在的目录并使用 编辑:您可以将替换为任何类路径。例如,要查找您的类路径,可以使用 编辑:看起来像有相当多的信息,可以帮助你在这里。