您的位置:首页 > 其它

One of the MulticastTest

2005-10-29 14:18 281 查看
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class MulticastTest{
public static void main(String args[]){

MulticastFrame frame = new MulticastFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();
}
}
/**
A frame with buttons to make and close secondary frames
*/

class MulticastFrame extends JFrame{

public MulticastFrame(){

setTitle("Sketch");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
//add panel to frame
MulticastPanel panel = new MulticastPanel();
Container contentPane = getContentPane();
contentPane.add(panel);
}

public static int DEFAULT_WIDTH = 300;
public static int DEFAULT_HEIGHT =200;
}
/**
A panel with buttons to create and close sample frames.
*/
class MulticastPanel extends JPanel{
public MulticastPanel(){
//add "New" button

JButton newButton = new JButton("New");
add(newButton);
final JButton closeAllButton = new JButton("Close all");
add(closeAllButton);
ActionListener newListener = new
ActionListener()
{
public void actionPerformed(ActionEvent event)
{
BlankFrame frame = new BlankFrame(closeAllButton);
frame.show();
}
};

newButton.addActionListener(newListener);
}
}
/**
A blank frame that can be closed by cliking a button.
*/
class BlankFrame extends JFrame{
/**
Constructs a blank frmae
@param closeButton the button to close this frmae
*/
public BlankFrame(final JButton closeButton){
counter++;
setTitle("Frmae"+ counter);
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
setLocation(SPACING * counter, SPACING * counter);
closeListener = new
ActionListener(){

public void actionPerformed(ActionEvent event){
closeButton.removeActionListener(closeListener);
dispose();
}
};
closeButton.addActionListener(closeListener);
}
private ActionListener closeListener;
private static final int DEFAULT_WIDTH = 200;
private static final int DEFAULT_HEIGHT = 300;
private static final int SPACING = 40;
private static int counter = 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: