?? messageboard.java
字號:
package Board;//by nmbaby
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class MessageBoard extends JFrame implements ActionListener,ItemListener{
JFrame window;//創建窗口
JButton bt;//發送鍵
JLabel mess,nam;//顯示訪客留言//顯示訪客名字
JRadioButton red,green,yellow;//顏色按鈕
ButtonGroup bGroup;
String messag;
JTextArea message,showMessage;//輸入文本區訪客留言//顯示留言
JTextField name;//輸入框訪客名字
JScrollPane jsp;
public MessageBoard(){
super("MessageBoard");
messag=" ";
window=new JFrame("MessageBoard");//窗口初始化
bt=new JButton("SEND");//發送鍵
mess=new JLabel("message:");//顯示訪客留言
nam=new JLabel("name:");//顯示訪客名字
name=new JTextField(10);//輸入框訪客名字
message=new JTextArea(5,35);//輸入文本區訪客留言
showMessage=new JTextArea(12,40);//顯示留言
showMessage.setEditable(false);//阻止在留言顯示部分寫入
Container c=getContentPane();//獲得窗口的內容顯示層
red=new JRadioButton("Red");//實現三個顏色按鈕
green=new JRadioButton("Green");
yellow=new JRadioButton("Yellow");
c.setLayout(null);//關閉默認布局
jsp=new JScrollPane(showMessage);//滾動條jsp實例化showMessage
c.add(jsp);//容器加載組件
jsp.setBounds(0,0,480,290);
c.add(name);
name.setBounds(80,300,200,20);
c.add(nam);
nam.setBounds(10,300,50,20);
c.add(message);
message.setBounds(100,330,380,150);
c.add(mess);
mess.setBounds(10,330,80,20);
c.add(red);
red.setBounds(20,520,80,30);
c.add(green);
green.setBounds(120,520,80,30);
c.add(yellow);
yellow.setBounds(220,520,80,30);
c.add(bt);
bt.setBounds(380,520,80,30);
bGroup=new ButtonGroup();//單一功能
bGroup.add(red);//添加單一使用組件
bGroup.add(green);
bGroup.add(yellow);
red.addItemListener(this);//實現監聽
green.addItemListener(this);
yellow.addItemListener(this);
bt.addActionListener(this);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//實現關閉鍵
setSize(500,600);//窗口大小
setVisible(true);//顯示窗口
}
//實現指定按鈕的單一使用,使得不會同時出現三種顏色同時操作
public void itemStateChanged(ItemEvent e){//當顏色按鈕被點擊時
if (e.getSource()==red)
showMessage.setBackground(Color.red);
if (e.getSource()==green)
showMessage.setBackground(Color.green);
if (e.getSource()==yellow)
showMessage.setBackground(Color.yellow);
}
//實現ActionListener接口的actionPerformed函數
public void actionPerformed(ActionEvent e){
String command=e.getActionCommand();
String caller=name.getText();
String messa=message.getText();
if (command.equals("SEND")){//確認按鈕
if (messa.length()==0){//留言為空時
JOptionPane.showMessageDialog(null,"Sorry,the message could't with anything!");
messag +="";
showMessage.setText(messag);
message.setText("");
name.setText("");
}
else if(caller.length()==0){//caller‘s name為空時
messag+="\n ****************************\n";
messag+= " mystery say:\n " + messa;
showMessage.setText(messag);
message.setText("");
} else{//caller輸入了姓名后
messag+="\n****************************\n";
messag+=" "+"*"+caller+"* say:\n "+messa;
showMessage.setText(messag);
message.setText("");
name.setText("");
}
}
}
public static void main(String[] args){//main
new MessageBoard();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -