⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 borderdemowithicon.java

📁 此文件能系统的介绍Java初级知识
💻 JAVA
字号:
package swing.border;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.BevelBorder;
import javax.swing.border.EmptyBorder;
import javax.swing.border.EtchedBorder;
import javax.swing.border.LineBorder;
import javax.swing.border.MatteBorder;

import swing.WindowDestroyer;


/**
 Class to demonstrate adding icons to a border.
*/
public class BorderDemoWithIcon extends JFrame implements ActionListener
{
    public static final int WIDTH = 400;
    public static final int HEIGHT = 300;

    private JTextField name;

    public BorderDemoWithIcon()
    {
        setTitle("Name Tester with Borders");
        setSize(WIDTH, HEIGHT);
        addWindowListener(new WindowDestroyer());
        Container content = getContentPane();
        content.setLayout(new GridLayout(2, 1));

        JPanel namePanel = new JPanel();
        namePanel.setLayout(new BorderLayout());
        namePanel.setBackground(Color.WHITE);

        name = new JTextField(20);
        //The following border is not as dramatic as others,
        //but look closely and you will see it.
        name.setBorder(new EtchedBorder(Color.GREEN, Color.BLUE));
        namePanel.add(name, BorderLayout.SOUTH);
        JLabel nameLabel = new JLabel("Enter your name here:");
        //The following does insert space around the label.
        //To see the difference, comment out the following line:
        nameLabel.setBorder(new EmptyBorder(20, 10, 0, 0));
        namePanel.add(nameLabel, BorderLayout.CENTER);

        namePanel.setBorder(new LineBorder(Color.BLACK, 10));
        content.add(namePanel);

        JPanel buttonPanel = new JPanel();
        buttonPanel.setLayout(new FlowLayout());
        JButton testButton = new JButton("Test");
        testButton.addActionListener(this);
        testButton.setBorder(new BevelBorder(BevelBorder.LOWERED));
        buttonPanel.add(testButton);

        JButton clearButton = new JButton("Clear");
        clearButton.addActionListener(this);
        clearButton.setBorder(new BevelBorder(BevelBorder.RAISED));
        buttonPanel.add(clearButton);


        ImageIcon smileyIcon = new ImageIcon(this.getClass().getResource("smiley.gif"));
        buttonPanel.setBorder(
                 new MatteBorder(60, 40, 30, 20, smileyIcon));//带一个图标边框
        content.add(buttonPanel);
    }

    public void actionPerformed(ActionEvent e)
    {
        if (e.getActionCommand().equals("Test"))
            name.setText("A very good name!");
        else if (e.getActionCommand().equals("Clear"))
            name.setText("");
        else
            name.setText("Error in window interface.");
    }

    public static void main(String[] args)
    {
        BorderDemoWithIcon w = new BorderDemoWithIcon();
        w.setVisible(true);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -