mainframe.java
来自「java网络高级编程的配套源码,java网络高级编程为清华出版社出版.」· Java 代码 · 共 149 行
JAVA
149 行
/*源代码清单10-14*/
package bean;
import java.awt.*;
import borland.jbcl.control.DecoratedFrame;
import java.awt.event.*;
import java.beans.*;
import java.util.*;
public class MainFrame extends DecoratedFrame implements PropertyChangeListener,KeyListener{
FlowLayout flowLayout1 = new FlowLayout();
Button button1 = new Button();
Button button2 = new Button();
Button button3 = new Button();
Button button4 = new Button();
LabelBean labelBean = new LabelBean();
TextBean textBean = new TextBean();
TextField textField1 = new TextField();
Label label1 = new Label();
public MainFrame()
{
try {
jbInit();
}
catch (Exception e)
{
e.printStackTrace();
}
}
public static void main(String[] args)
{
MainFrame frame=new MainFrame();
frame.setLocation(250,250);
frame.setSize(250,130);
frame.show();
}
private void jbInit() throws Exception
{
this.setTitle("JavaBean示例");
this.setSize(new Dimension(267, 129));
button1.setLabel("红 色");
button1.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e) {
button1_actionPerformed(e);
}
});
button2.setLabel("黄 色");
button2.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e) {
button2_actionPerformed(e);
}
});
button3.setLabel("绿 色");
button3.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e) {
button3_actionPerformed(e);
}
});
button4.setLabel("兰 色");
button4.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e) {
button4_actionPerformed(e);
}
});
labelBean.setText("labelBean");
textBean.setText("缺省是黑色");
textField1.setText("您还没有敲入字母");
label1.setText("您还没有击打键盘");
this.setLayout(flowLayout1);
this.add(button1, null);
this.add(button2, null);
this.add(button3, null);
this.add(button4, null);
this.add(labelBean, null);
//注册本对象为LabelBean的属性变化监听器
labelBean.addPropertyChangeListener(this);
this.add(textBean, null);
//注册本对象为TextBean的属性变化监听器
//注册本对象为TextBean的事件触发监听器
textBean.addPropertyChangeListener(this);
textBean.addKeyListener(this);
this.add(textField1, null);
this.add(label1, null);
}
void button1_actionPerformed(ActionEvent e)
{
labelBean.setOutString("红色");
}
void button2_actionPerformed(ActionEvent e)
{
labelBean.setOutString("黄色");
}
void button3_actionPerformed(ActionEvent e)
{
labelBean.setOutString("绿色");
}
void button4_actionPerformed(ActionEvent e)
{
labelBean.setOutString("兰色");
}
public void propertyChange(PropertyChangeEvent env)
{
String source=env.getPropertyName();
if(source.equals("outString")){
String newValue=(String)env.getNewValue();
textBean.setShowText("现在是"+newValue);
}
if(source.equals("showText")){
String newValue=(String)env.getNewValue();
try{Thread.sleep(2000);}catch(Exception e){}
labelBean.setText(newValue);
}
}
public void keyReleased(KeyEvent e)
{
char c=e.getKeyChar();
label1.setText("您的键盘弹出来了!");
}
public void keyTyped(KeyEvent e)
{
char c=e.getKeyChar();
textField1.setText("您敲入的字母是:"+c);
}
public void keyPressed(KeyEvent e)
{
char c=e.getKeyChar();
label1.setText("您的键盘按下去了!");
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?