[英]JButton, setText doesn't work?
我試圖使按鈕更改其他按鈕的文本,但settext不起作用。
這是appdroid.java:
包appdroid;
public class appdroid{
static int a = 640;
static int b = 400;
static int c = 100;
static int d = 100;
public static void main(String[] args) {
new gui();
}
}
這是gui.java:
package appdroid;
import javax.swing.AbstractButton;
import javax.swing.JFrame;
import javax.swing.JButton;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class gui extends JFrame implements ActionListener {
String[] a = {"Search device","Device not found","Error, bad device","Device found"};
String[] b = {"Device not found","Error, bad device","Compile"};
String[] c = {"Device not found","Error, bad device","Unpack"};
String d = a[0];
String f = b[0];
String g = c[0];
private JButton b1;
private JButton b2;
private JButton b3;
public gui(){
super("APPDROID");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setSize(appdroid.a,appdroid.b);
setLocation(appdroid.c,appdroid.d);
setLayout(new FlowLayout());
JButton b1 = new JButton(d);
JButton b2 = new JButton(f);
JButton b3 = new JButton(g);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
add (b1);
add (b2);
add (b3);
}
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if(source == b1){
d = a[3];
f = b[2];
b1.setText(d);
b2.setText(f);
}
if(source == b2){
g = c[2];
b3.setText(g);
}
if(source == b3 && g == c[2]){
;
}
}
}
我向按鈕等添加了動作事件,如何查看,但不起作用。
您已經在gui()
構造函數中創建了3個局部變量
JButton b1 = new JButton(d);
JButton b2 = new JButton(f);
JButton b3 = new JButton(g);
我想您想初始化字段?
b1 = new JButton(d);
b2 = new JButton(f);
b3 = new JButton(g);
由於您將source
與actionPerformed(ActionEvent e) {
的字段b1
, b2
..
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.