欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

java樹形和卡片布局

Java語言在界面布局方面,提供了多種布局方式,其中樹形布局和卡片布局是比較常見的。下面我們分別來介紹一下這兩種布局。

一、樹形布局

public class JTreeDemo extends JFrame {
public JTreeDemo() {
setTitle("樹形控件演示");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 300, 300);
JTree tree = new JTree();
getContentPane().add(tree);
setVisible(true);
}
public static void main(String[] args) {
new JTreeDemo();
}
}

上面的代碼演示了如何創(chuàng)建一個(gè)簡單的樹形控件。通過JTree類,我們可以創(chuàng)建一個(gè)支持樹形結(jié)構(gòu)的控件,并可以通過設(shè)置節(jié)點(diǎn)等方式,來創(chuàng)建多層次的結(jié)構(gòu),增加控件的靈活性和可擴(kuò)展性。

二、卡片布局

public class CardLayoutDemo extends JFrame implements ActionListener {
private JButton btn1, btn2;
private JPanel cardPanel;
public CardLayoutDemo() {
setTitle("卡片布局演示");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 300, 300);
btn1 = new JButton("第一個(gè)面板");
btn1.addActionListener(this);
btn2 = new JButton("第二個(gè)面板");
btn2.addActionListener(this);
JPanel buttonPanel = new JPanel();
buttonPanel.add(btn1);
buttonPanel.add(btn2);
cardPanel = new JPanel(new CardLayout());
cardPanel.add(new JLabel("第一個(gè)面板"), "1");
cardPanel.add(new JLabel("第二個(gè)面板"), "2");
getContentPane().add(buttonPanel, BorderLayout.NORTH);
getContentPane().add(cardPanel, BorderLayout.CENTER);
setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btn1) {
CardLayout cardLayout = (CardLayout) cardPanel.getLayout();
cardLayout.show(cardPanel, "1");
} else if (e.getSource() == btn2) {
CardLayout cardLayout = (CardLayout) cardPanel.getLayout();
cardLayout.show(cardPanel, "2");
}
}
public static void main(String[] args) {
new CardLayoutDemo();
}
}

上面的代碼演示了如何使用卡片布局創(chuàng)建一個(gè)多面板控件。通過CardLayout類,我們可以將多個(gè)面板組合起來,每次只顯示其中一個(gè)面板,從而實(shí)現(xiàn)多場(chǎng)景下的控件展示和切換。