我是新手,请耐心等待
我想要的是
我有一个 JPanel,上面有一个 JButton、一个 JLabel 和一个 JTextArea。按下 JButton 后,必须在 JLabel 内打印图像(以及 JTextArea 中的一些文本)。这个特定的图像(和文本)由 if-else 语句确定。if-else 的条件基于整数变量 R。
基本上,它是我正在尝试进行的一项类似于问答的调查。我使用 R 记录用户的答案。当用户单击一个选项时,R 的值会更新。
它适用于文本,但不适用于图像。
对于文本,我使用字符串变量 yourphone。如果最后 R 的值是 120,那么你的手机会更新为一个字符串,例如。Xperia Z。
我想要一个可用于图像的类似变量,以便在用户单击 JButton 时显示 Xperia Z 的图片。
在 if-else 语句中使用 R 的总值。
结构
我像这样启动变量
int R=0;
String yourphone;
ImageIcon imageresult;
我的 JPanel 用于显示结果
final JPanel result = new JPanel();
result.setBackground(Color.BLACK);
getContentPane().add(result, "name_17130054294139");
result.setLayout(null);
final JTextArea txtrphoneresult = new JTextArea();
txtrphoneresult.setBackground(Color.BLACK);
txtrphoneresult.setForeground(Color.YELLOW);
txtrphoneresult.setFont(new Font("Tahoma", Font.PLAIN, 14));
txtrphoneresult.setBounds(448, 515, 469, 121);
result.add(txtrphoneresult);
JLabel resultlabel = new JLabel(imageresult);
resultlabel.setBounds(292, 122, 782, 346);
result.add(resultlabel);
JButton btnShowResult = new JButton("Show Result");
btnShowResult.setFont(new Font("Tahoma", Font.PLAIN, 10));
btnShowResult.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(R==1726)
{
yourphone = "Samsung Galaxy S4\r\nHTC One\r\nSony Xperia Z";
ImageIcon imageresult = new ImageIcon("galaxy_one_XperiaZ.jpg");
}
else if(R==5002)
{
yourphone = "Sony Xperia Z1\r\nSamsung Galaxy Note 3";
ImageIcon imageresult = new ImageIcon("Note3_sonyZ1.jpg");
}
else
{
yourphone = "No Results";
}
txtrphoneresult.setText(yourphone);
}
});
btnShowResult.setBounds(618, 48, 130, 32);
result.add(btnShowResult);
问题
图像根本不显示。如果有任何其他可能的方法来实现这一点,请指导。