我想在点击 YES 按钮时显示 YES LABEL 首先,我创建了两个面板
然后创建两个按钮,然后创建两个标签然后创建一个 在那两个按钮里面的构造函数
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
class myProgram extends Frame implements ActionListener{
// create two panels
Panel p1=new Panel();
Panel p2=new Panel();
// create two buttons
Button yes=new Button("YES");
Button no=new Button("NO");
// create two labels
Label l1=new Label("YES LABEL");
Label l2=new Label("NO LABEL");
// create a constructor
myProgram() {
//p2.add(l1);
p1.add(yes);
p1.add(no);
yes.addActionListener(this);
no.addActionListener(this);
Frame f=new Frame();
f.setSize(500,500);
f.add(p1);
f.add(p2);
f.setVisible(true);
}
public void actionPerformed(ActionEvent ae) {
String str = ae.getActionCommand();
if(str.equals("YES")) {
p2.add(l1);
}
else {
}
revalidate();
repaint();
}
public static void main(String[] args) {
myProgram p1=new myProgram();
}
}
答案 0 :(得分:0)
不是创建2个单独的标签,而是创建一个空标签,将其添加到面板2上并在label.setText(str)
条件下使用if
。另外,设置框架的布局以获得正确的输出。
在此处突出显示if
条件
if(str.equals("YES")) {
System.out.println(str);
label.setText(str);
}
else if(str.equals("NO")) {
System.out.println(str);
label.setText(str);
}