public ActionForward portCom(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
PortForm portForm = (PortForm) form;
String portName = portForm.getPortName();
String rate = portForm.getRate();
    /**//*  实例化接收串口数据的窗体类  */
 R_Frame R_win=new R_Frame(portName,rate);
/**//*  定义窗体适配器的关闭按钮功能 */
     R_win.addWindowListener(new WindowAdapter()
             {public void windowClosing(WindowEvent e)
                {System.exit(0); }
      });
   R_win.pack();
   return null;
}下面是R_Frame的类_Frame()
 {
 super("串口接收数据");
   setSize(200,200);
   setVisible(true);
   btnOpen.addActionListener(this);
   add(out_message,"South");
   add(in_message,"Center");
   add(btnOpen,"North");
 } //R_Frame() end /**//*点击按扭所触发的事件:打开串口,并监听串口. */
 public void actionPerformed(ActionEvent event)
 {
  /**//*获取系统中所有的通讯端口  */
  portList=CommPortIdentifier.getPortIdentifiers();
  /**//* 用循环结构找出串口 */
  while (portList.hasMoreElements()){  
   /**//*强制转换为通讯端口类型*/
    portId=(CommPortIdentifier)portList.nextElement();
    if(portId.getPortType() == CommPortIdentifier.PORT_SERIAL){
      if (portId.getName().equals("COM1")) {
        try {
serialPort = (SerialPort) portId.open("ReadComm", 2000);
       out_message.setText("已打开端口COM1 ,正在接收数据..... ");
      }
  catch (PortInUseException e) { }
看到那句红色的代码吗,我要把里面的"COM1"改成portName这个参数该怎么办,谁教下

解决方案 »

  1.   

    颜色失效了就是if (portId.getName().equals("COM1"))这里面的"COM1"是我写死了,改成R_Frame R_win=new R_Frame(portName,rate);的portName这个从ACTION传来的参数该怎么做呢
      

  2.   

    java的问题,而且还是串口的,你要难死这帮人吗
      

  3.   

    你认真看啊``我就是个传参数而已啊我要传String portName = portForm.getPortName();
    String rate = portForm.getRate();这2个参数到Frame类里面啊``