Java在GUI中按下按钮时会生成下一组按钮按钮
问题描述:
这是我在*上的第一篇文章,我很想听听在本网站上发布问题的正确礼仪。Java在GUI中按下按钮时会生成下一组按钮按钮
我在简短的几条语句中遇到问题:
我希望能够通过单击按钮来更改Java GUI中标签的编号。当我点击按钮时,屏幕上的15个标签应该从1-15到16-31。随着每次点击,标签都应该生成接下来15个数字的标签。
图片: 目前发生的事情是,当我按“下一步”按钮,如下:
GUI screen prior to pressing the next button
After the next button is pressed, the screen changes to the following
我面对的是,那之后我按下一个按钮的问题再次,屏幕不会改变,并保持16-31的标签。
目的:具有功能“上一页”和“下一页按钮有序分别刷新与前15个或下一个15标签的GUI,
以下是用于该事件处理程序的代码。”上一页“Next”按钮:
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
int updateLabelBy = 16;
int multiplyingFactor = 1;
int sum = multiplyingFactor * updateLabelBy ;
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
//When this button is pressed, JPanel2,3,4,5 will all show the next instance of solutions
if (NumOfExplanations > 15)
{
//Clearing out JPannels
jPanel1.removeAll();
jPanel1.updateUI();
jPanel2.removeAll();
jPanel2.updateUI();
jPanel3.removeAll();
jPanel3.updateUI();
jPanel4.removeAll();
jPanel4.updateUI();
jPanel5.removeAll();
jPanel5.updateUI();
//To update the label index numbers
//int multiplied = multiplyingFactor * updateLabelBy;
for (int i = 16; i < NumOfExplanations; i++)
{
JLabel label = new JLabel("Exp " + i );
label.setSize(100,35);
label.setMaximumSize(new Dimension (140,40));
label.setMinimumSize(new Dimension (100,30));
label.setFont(new Font("Serif", Font.BOLD, 15));
jPanel2.setLayout(new BoxLayout(jPanel2, BoxLayout.Y_AXIS));
jPanel2.setBorder(BorderFactory.createEmptyBorder(10, 10, 15, 0));
label.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jPanel2.add(label);
}
}
else
{
final JFrame parent = new JFrame();
JButton button = new JButton();
button.setText("This document only contains " + NumOfExplanations + " explanations");
parent.add(button);
parent.pack();
parent.setVisible(true);
parent.setSize(400,200);
parent.setLocationRelativeTo(null);
}
}
答
这很容易做到。要更改按钮上显示文本,只是做
btn.setText("New message")
我相信这是比这更复杂一点。由于'btn.setText(“message”)将所有按钮的标签更改为相同的东西。 GUI的屏幕只能容纳15个按钮,正如我在上面的GUI的ScreenShot中所示。 –
如果所有按钮的名称不同,例如btn1,btn2等,你可以做btn1.setText(“消息”),这将不会改变他们。 – DalekCaan99
我不是手动创建按钮,我通过添加'for'循环来制作按钮。 –