我需要Java帮助。
与VB.NET合作,你可以理解我的困境。我是Java GUI的新手。我创建了一个带有按钮的旋转表单,添加,编辑,保存。单击“添加”时,我想为某些全局变量(例如isAdding)将状态设置为TRUE,并在单击“编辑”按钮时将其设置为FALSE。这是为了让我决定调用insert sql脚本或Update sql脚本。
问题是,我正在摸索构造函数和封装等来做到这一点。如上所述,我怎样才能轻松实现这一目标?
答案 0 :(得分:1)
全球状态不是一种好习惯,可能会导致副作用。 您应该创建一个显示在屏幕上的数据模型。 例如,当由于用户操作而改变模型时,应该更新屏幕。 如果用户输入数据(文本输入),则必须更新模型。 为了使模型和屏幕保持同步,您可以实现Observer模式,因为没有与Swing的数据绑定。
答案 1 :(得分:1)
事实上,我不明白全球变量是什么意思。但是当我在JAVA GUI中执行事件处理时,我通常会按照以下方式执行操作。
class Editeur implements ActionListener{
Frame theFrame;
Panel theButtons;
Button toRead;
Button toWrite;
//the other components
Editeur(){
super();
}
void execute(){
// initialization
theFrame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
}
public void read() {
//do somethings
}
public void write() {
//do somethings
}
public void actionPerformed(ActionEvent e) {
//when toRead is clicked, read();toWrite is clicked, write()
if (e.getSource().equals(toRead)) {
read();
}else if (e.getSource().equals(toWrite)){
write();
}
else{
// do somethings
}
}
public static void main(String[] args){
(new Editeur()).execute();
}
}