在对陈军老师死缠烂打之后,整出了一篇我都没怎么看懂的程序。。。。。。感兴趣的同学可以试着运行一下,图形和文档在附件里
package gui; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.util.Random; import javax.p_w_picpathio.stream.FileImageInputStream; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; public class XQ extends JFrame implements ActionListener{ private JLabel lbResult; private JButton[] btnArr;// 创建按钮 public XQ(){ JPanel pnBasic= new JPanel();// 定义基础面板(画布) pnBasic.setColor.BLUE); // 设置画布的背景色 GridLayout lyGrid= new GridLayout(2,1);// 创建布局方式:网状布局:N行N列 pnBasic.setLayout(lyGrid);// 设置基础面板的布局为指定布局。 JPanel pnGREEN = new JPanel();// 创建上面板 JLabel lbShow =new JLabel("请选择心情");// 创建一个标签 String[] btCommit= new String[]{"伤心","啦啦啦","kiss","吃萝卜","生气","可爱","委屈","得瑟"}; btnArr = new JButton[btCommit.length]; for(int i=0;i<btCommit.length;i++){ btnArr[i] = new JButton(btCommit[i]); btnArr[i].setActionCommand(i+1+""); System.out.println(btnArr[i].getActionCommand()+"..."); btnArr[i].addActionListener(this); btnArr[i].setIcon(new ImageIcon(XQ.class.getResource(i+1+".gif")));//将图形做成按钮 pnGREEN.add(btnArr[i]);// 将控件添加到面板中 } // 将控件添加到上面板中 pnGREEN.add(lbShow); pnGREEN.setColor.GREEN); // 指定上面板的背景色为绿色 JPanel pnYELLOW= new JPanel();// 创建下面板 pnYELLOW.setColor.YELLOW); // 指定下面板背景色为××× lbResult = new JLabel(); lbResult.setText("等待用户选择。。。。"); pnYELLOW.add(lbResult);// 将控件添加到面板中 pnBasic.add(pnGREEN);// 将控件添加到面板中 pnBasic.add(pnYELLOW);// 将控件添加到面板中 setContentPane(pnBasic);// 画板和画布相绑定 setTitle("表情");// 设置窗口标题 setBounds(200,200,400,400);// x y width heigth 设置窗口出现的位置和大小 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置窗体退出方式 // pack(); // setResizable(false); setVisible(true); } public void actionPerformed(ActionEvent e ){ JButton btnSelect = (JButton) e.getSource(); // for(int i=0;i<btnArr.length;i++){//起初用for 循环和switch 发现不可行 String strFace = btnSelect.getActionCommand(); int niFace = Integer.parseInt(strFace); System.out.println("niFace:"+niFace); try { FileReader fr = new FileReader("src/gui/"+niFace+".txt");//插入文档 int b = 0; String str = ""; while((b=fr.read())!=-1){ str += (char)b; } String strBegin = "<html>";//将文档分行 String strResult = ""; String strEnd = "</html>"; System.out.println(str); String strTemp2 = ""; for(int i=0;i<str.length()-20;i=i+20){ String strTemp = str.substring(i, i+20); strTemp2 = str.substring(str.length()/20*20); strResult+=strTemp+"<br/>"; } lbResult.setText(strBegin+strResult+strTemp2+strEnd); } catch (Exception e1) { e1.printStackTrace(); } // ImageIcon icon = new ImageIcon(XQ.class.getResource(niFace+".gif"));//输出图形 // lbResult.setIcon(icon); // lbResult.setText(""); // switch(niFace){//用switch 语句太过繁琐 // // case 1: // ImageIcon icon1 = new ImageIcon(XQ.class.getResource("1.gif")); // lbResult.setIcon(icon1); // lbResult.setText(""); // break; // case 2: // // ImageIcon icon2 = new ImageIcon(XQ.class.getResource("2.gif")); // lbResult.setIcon(icon2); // lbResult.setText(""); // break; // case 3: // ImageIcon icon3 = new ImageIcon(XQ.class.getResource("3.gif")); // lbResult.setIcon(icon3); // lbResult.setText(""); // break; // case 4: // ImageIcon icon4 = new ImageIcon(XQ.class.getResource("4.gif")); // lbResult.setIcon(icon4); // lbResult.setText(""); // break; // case 5: // ImageIcon icon5 = new ImageIcon(XQ.class.getResource("5.gif")); // lbResult.setIcon(icon5); // lbResult.setText(""); // break; // case 6: // ImageIcon icon6 = new ImageIcon(XQ.class.getResource("6.gif")); // lbResult.setIcon(icon6); // lbResult.setText(""); // break; // case 7: // ImageIcon icon7 = new ImageIcon(XQ.class.getResource("7.gif")); // lbResult.setIcon(icon7); // lbResult.setText(""); // break; // case 8: // ImageIcon icon8 = new ImageIcon(XQ.class.getResource("8.gif")); // lbResult.setIcon(icon8); // lbResult.setText(""); // break; // // } // System.out.println(niFace); // break; // } } public static void main(String[] args) { new XQ(); } }