簡體   English   中英

如何使用卡片布局中的按鈕導航到上一張卡片?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM