[英]How to navigate to previous card with button in card layout?
我在Netbeans中創建了一個Java應用程序,並使用CardLayout
制作了三張卡,當我單擊三個按鈕時,它們會出現。
一切都很好,但是我想制作一個“后退”圖標,當單擊該圖標時,它會帶來前一張卡片,因此,如果我在第三張卡片中,則單擊“后退”圖標會帶來第二張卡片,然后從第二張卡到第一張,依此類推。
問題是,例如,我希望程序知道我們在第二張卡中,因此單擊“后退”圖標將顯示第一張卡。
后退圖標也位於同一JFrame
另一個面板上。 希望有人幫忙!
左下方的圖標是“后退”按鈕,卡片位於白色部分的內側。
我想您項目中的某個地方已經有以下代碼段:
為了在右側構建面板(使用CardLayout
的面板):
JPanel panel1 = ...;
JPanel panel2 = ...;
JPanel panel3 = ...;
JPanel rightPanel = new JPanel();
CardLayout cardLayout = new CardLayout();
rightPanel.setLayout(cardLayout);
rightPanel.add(panel1);
rightPanel.add(panel2);
rightPanel.add(panel3);
並用於構建“后退”按鈕(帶有<-
圖標的按鈕):
JButton backButton = ...;
然后,您需要添加的內容如下:
backButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
cardLayout.previous(rightPanel);
}
});
或等效地,如果您喜歡Java 8的簡潔lambda語法:
backButton.addActionListener(e -> cardLayout.previous(rightPanel));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.