Java 在网格中动态创建按钮
Java create buttons dynamically in grid
我正在 java 中制作一个桌面应用程序,我想在其中动态创建按钮。动态创建的按钮应该放置在类似网格的结构中。现在我担心的是,如果我想访问这些按钮,那么我该怎么做,因为我没有特定按钮的 ID?
setLayout(new java.awt.GridLayout(4, 4));
for (int i = 0; i < dataCount; i++)
{
GridBagConstraints c = new GridBagConstraints();
jPanel1.setLayout(new GridBagLayout());
c.fill = GridBagConstraints.HORIZONTAL;
c.weightx = 0;
c.gridx = 0;
c.gridy = 0;
jPanel1.add(new JButton(linesArray[i]), c);
jPanel1.setBackground(Color.WHITE);
jPanel1.setBorder(BorderFactory.createMatteBorder(0,0,1,0,Color.BLACK));
}
如何通过特定 ID 访问按钮?
您可以创建一个 array
来放置您所有的按钮:
JButton[] buttons = new JButton[dataCount];
然后添加按钮,通过array
调用按钮:
buttons[i] = new JButton(linesArray[i]), c);
jPanel1.add(buttons[i]);
我正在 java 中制作一个桌面应用程序,我想在其中动态创建按钮。动态创建的按钮应该放置在类似网格的结构中。现在我担心的是,如果我想访问这些按钮,那么我该怎么做,因为我没有特定按钮的 ID?
setLayout(new java.awt.GridLayout(4, 4));
for (int i = 0; i < dataCount; i++)
{
GridBagConstraints c = new GridBagConstraints();
jPanel1.setLayout(new GridBagLayout());
c.fill = GridBagConstraints.HORIZONTAL;
c.weightx = 0;
c.gridx = 0;
c.gridy = 0;
jPanel1.add(new JButton(linesArray[i]), c);
jPanel1.setBackground(Color.WHITE);
jPanel1.setBorder(BorderFactory.createMatteBorder(0,0,1,0,Color.BLACK));
}
如何通过特定 ID 访问按钮?
您可以创建一个 array
来放置您所有的按钮:
JButton[] buttons = new JButton[dataCount];
然后添加按钮,通过array
调用按钮:
buttons[i] = new JButton(linesArray[i]), c);
jPanel1.add(buttons[i]);