我不知道出了什么问题,但这很有趣。我用CardLayout
和面板编写了代码。在面板上CardLayout
我放了JButton
s fromArrayList
并且它正在工作......
它看起来像这样:
面板CardLayout
底部带有粉红色JButton
的s.....我的部分代码是
public class Controller extends JPanel {
ArrayList<JButton> tnp=new ArrayList<JButton>();
ArrayList<JButton> sokp=new ArrayList<JButton>();
ArrayList<JButton> alkp=new ArrayList<JButton>();
CardLayout cardlayout=new CardLayout();
JPanel cardpanel = new JPanel(cardlayout);
但是,当我像这样添加静态时ArrayList
:
static ArrayList<JButton> tnp=new ArrayList<JButton>();
static ArrayList<JButton> sokp=new ArrayList<JButton>();
static ArrayList<JButton> alkp=new ArrayList<JButton>();
我的应用程序看起来像这样:
如您所见,程序仍然显示带有 CardLayout 的面板,(边框带有red
)但 JButtons 来自
static ArrayList<JButton> tnp=new ArrayList<JButton>();
static ArrayList<JButton> sokp=new ArrayList<JButton>();
static ArrayList<JButton> alkp=new ArrayList<JButton>();
丢失!为什么?
我不明白。一个 ArrayList 用于一个带有卡片布局的面板,该面板用于所有 JTabbedPane,并且我想从另一个类访问该列表(这就是我想要静态的原因),以向该面板添加或删除按钮。但我不能,没有任何东西可以添加到该 arraylist 中。