背景:我有一个AccountingModuleUI JFrame
,其帐户图表JPanel
包含帐户JButtons
,作为ArrayList
的一部分,因为它们是通过CreateAccount生成的JButton
,连续Jbutton生成的代码如下:
private void btnCreateAccountActionPerformed(java.awt.event.ActionEvent evt) {
jLabel2.setText("Chart of Accounts");
buttonArrayList.add(new JButton("Button"+buttonCount));
panelAccounts.add(buttonArrayList.get((buttonArrayList.size()-1)));
buttonArrayList.get((buttonArrayList.size()-1)).show();
buttonCount++;
buttonArrayList.get((buttonArrayList.size()-1)).addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
inputForm.show();
}
});
repaint();
revalidate();
}
当单击其中一个新创建的JButton时,将显示输入表单,这是它自己的独立类。用户输入信息并单击Submit按钮,然后通过InputForm类中的以下代码创建Account对象:
private void btnSubmitActionPerformed(java.awt.event.ActionEvent evt) {
acctName = txtAcctName.getText();
acctClass = cboxAcctClass.getSelectedItem().toString();
acctSubClass = cboxAcctSubClass.getSelectedItem().toString();
acctCCY = cboxAcctCCY.getSelectedItem().toString();
accountArrayList.add(new Accounts(acctName, acctClass, acctSubClass,(i+1)));
i++;
this.hide();
}
到目前为止一切正常,但是我在尝试将Account对象的acctName返回到AccountingModuleUI类起点中的JButton文本时遇到了困难。有什么建议吗?
答案 0 :(得分:0)
查找模型 - 视图 - 控制器设计架构https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
在您的情况下,我会让控制器类更新您的视图以响应模型中的更新。可以扩展 btnSubmitActionPerformed 的功能,以使用新帐户名更新JButton。