Swing组件学习代码示例之JDesktopPane

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class JDeskTopPaneTest extends JFrame implements ActionListener
{
private Container container = null ;
private JButton btn = null ;
private int xOffSet = 50 ; //内部窗体x偏移量
private int yOffSet = 50 ; //内部窗体y偏移量
private int frameCount = 0; //内部窗体个数
private JDesktopPane desktopPane ; //桌面窗格
private JInternalFrame internalFrame ; //内部窗体

public JDeskTopPaneTest(){
//设置main窗体
setTitle("桌面窗格示例");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(800,600);
container = getContentPane();
desktopPane = new JDesktopPane();
desktopPane.setBackground(new Color(224,224,224));
container.add(desktopPane);

//实例化按钮,注册事件,添加到main窗体
btn = new JButton("add");
btn.setActionCommand("add");
btn.addActionListener(this);
container.add(btn,BorderLayout.SOUTH);

try {
//UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");//Windows风格
//UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel") ; //Mac风格
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel") ;//Java默认风格
} catch (ClassNotFoundException ex) {
ex.printStackTrace();
} catch (InstantiationException ex) {
ex.printStackTrace();
} catch (IllegalAccessException ex) {
ex.printStackTrace();
} catch (UnsupportedLookAndFeelException ex) {
ex.printStackTrace();
}

}

public void actionPerformed(ActionEvent e){
if("add".equals(e.getActionCommand())){
addInternalFrame();
}

}

public void addInternalFrame(){
internalFrame = new JInternalFrame("frame" + frameCount,true,true,true,true);
internalFrame.setSize(200,150);
internalFrame.setVisible(true);
internalFrame.setLocation(xOffSet * frameCount,yOffSet * frameCount);
internalFrame.getContentPane().add(new JLabel("哈哈!"),BorderLayout.CENTER);
desktopPane.add(internalFrame);
try{
internalFrame.setSelected(true);
}catch(Exception e){
JOptionPane.showMessageDialog(null,"选择错了");
}
frameCount++;
}
public static void main(String[] args){
new JDeskTopPaneTest().setVisible(true);
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值