主要课程
public class NewJFrame extends javax.swing.JFrame {
int ptr;
int ctr;
BankAccount b[] = new BankAccount[10];
public NewJFrame() {
initComponents();
ptr = 0;
ctr = 0;
ptr = ctr;
}
private void AddActionPerformed(java.awt.event.ActionEvent evt) {
b[ctr] = new BankAccount();
jTextField1.setText(Integer.toString(b[ctr].getAccountno()));
jTextField2.setText("");
jTextField3.setText("");
jTextField4.setText("");
jTextField5.setText("");
ctr++;
}
private void SaveActionPerformed(java.awt.event.ActionEvent evt) {
b[ctr].setName(jTextField2.getText());
b[ctr].setAddress(jTextField3.getText());
b[ctr].setSex(jTextField4.getText());
jTextField2.setText(b[ptr].getName());
ctr++;
}
private void previousActionPerformed(java.awt.event.ActionEvent evt) {
ptr--;
disp();
}
private void nextActionPerformed(java.awt.event.ActionEvent evt) {
ptr++;
disp();
}
private void disp() {
jTextField1.setText(Integer.toString(b[ptr].getAccountno()));
jTextField2.setText(b[ptr].getName());
jTextField3.setText(b[ptr].getAddress());
jTextField4.setText(b[ptr].getSex());
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
银行帐户类
public class BankAccount extends Person {
private static int accountno;
private double balance;
public BankAccount(){
balance = 0;
accountno++;
}
public BankAccount(String temp){
super(temp);
balance = 0;
accountno++;
}
public static int getAccountno(){
return accountno;
}
public double getBalance(){
return balance;
}
public void setBalance(double temp){
balance = temp;
}
public void deposit(double temp){
balance = balance + temp;
}
public void withdraw(double temp){
if(temp>this.getBalance()){
balance = 0;
} else {
balance = balance - temp;
}
}
}
和人类
public class Person {
private String name;
private String address;
private String sex;
private static int personcount;
public Person(){
personcount++;
}
public Person(String temp) {
this.setName(temp);
personcount++;
}
public String getName() {
return name;
}
public void setName(String temp){
name = temp;
}
public String getAddress() {
return address;
}
public void setAddress(String temp){
address = temp;
}
public String getSex() {
return sex;
}
public void setSex(String temp){
sex = temp;
}
public static int getPersonCount(){
return personcount;
}
}
**现在我无法弄清楚如何将文本从文本字段保存到各自的类中。以及如何使用上一个和下一个按钮,它应该根据AccountNo显示上一个/下一个文本。我猜在主课上犯了很多错误,但现在我真的很困惑。
我希望自己清楚,甚至关闭 **
答案 0 :(得分:1)
SaveActionPerformed
方法中的代码行已将文本字段中的文本保存到各自的类中。
b[ctr].setName(jTextField2.getText());
...
previousActionPerformed
和nextActionPerformed
方法看起来也正确实现。
此代码的问题在于您不会在任何地方声明或初始化jTextField1
,jTextField2
等变量。看起来您可能已从教科书或作业中复制了此代码。看看是否有更多的代码声明了这些JTextField
变量,并且还寻找initComponents()
方法声明(或者可能是您自己完成这些步骤的分配)。这些应该在你的主要课程中。