import javax.swing.*;//引入Swing包名
import java.awt.*;
import java.awt.event.*;
public class SwingApplication {
private static String labelPrefix="Number of button clicks:";
private int numClicks=0;//计数器,计算点击次数
public Component createComponents() {
final JLabel label=new JLabel(labelPrefix+"0");
JButton button=new JButton("I'm a Swing button!");
button.setMnemonic(KeyEvent.VK_I);//设置按钮的热键为Alt+i
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
numClicks++;
label.setText(labelPrefix+numClicks);//显示按钮被点击的次数
}
});
label.setLabelFor(button);//在顶层容器及其内容之间放置空间的常用办法是把内容添加到JPanel上,而JPanel本身没有边框
JPanel pane=new JPanel();
pane.setBorder(BorderFactory.createEmptyBorder(30, 30, 10, 30));//top、left、bottom、right
pane.setLayout(new GridLayout(0,1));//单行多列
pane.add(button);
pane.add(label);
return pane;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());//设置窗口风格
}
catch(Exception e) {}
//创建顶层容器并添加内容
JFrame frame=new JFrame("Swing Application");
SwingApplication app=new SwingApplication();
Component contents=app.createComponents();
frame.getContentPane().add(contents,BorderLayout.CENTER);
//窗口设置结束,开始显示
frame.addWindowListener(new WindowAdapter() {//匿名类用于注册监听器
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
frame.pack();
frame.setVisible(true);
}
}
Java语言-SwingApplication.java
最新推荐文章于 2021-02-24 02:19:08 发布