gente me ajudem, sou novato em java, contrui um Jpanel com botoes e tal, as outras funçoes dele tah certo, mas eu presico que as menssagens de erro apareçam dentro do text are que criei, mas não estou conseguindo implantar.
eu tentei criar um metodo que recolhe todas as menssagens de erro mas naum sei se isso serve ou naum, enfim:
Que mensagens de erro? Como você está exibindo essa mensagem hoje em dia?
banger
via System, mas eu precisaria que ao inves de usar o System.out, gostaria que as menssagens aparecessem em uma caixa de texto, tpw:
ao invés de
...
}
else{
System.out.println("menssagem de erro");
}
fosse para uma string que imprimisse estas msgs em outro lugar:
Msg("menssagem de erro");publicvoidMsg(){StringentraAmenssagemAqui=newString();}
mas quanto eu tento encaixar a msg para o objeto de textArea, não funfa!!
tpw eu to criando um jFrame e nele há um JTextArea denominado read, mas ai eu coloco o metodo lah e num roda!!
ViniGodoy
Posta teu código aí. Mas para escrever num JTextArea é só chamar:
seuTextArea.append(texto);
banger
lah vai:
privatevoidEntradaActionPerformed(java.awt.event.ActionEventevt){}privatevoidSaidaActionPerformed(java.awt.event.ActionEventevt){// TODO add your handling code here:}privatevoidlogTIMSActionPerformed(java.awt.event.ActionEventevt){// TODO add your handling code here:}privatevoidexitActionPerformed(java.awt.event.ActionEventevt){System.exit(0);}privatevoidconectarActionPerformed(java.awt.event.ActionEventevt){// determina o nome da porta serial no sistemaStringosname=System.getProperty("os.name","").toLowerCase();if(osname.startsWith("windows")){// windowsdefaultPort="COM3";}elseif(osname.startsWith("linux")){// linuxdefaultPort="/dev/ttyS0";}elseif(osname.startsWith("mac")){// macdefaultPort="????";}else{Msg("Sorry, your operating system is not supported");return;}// parse ports and if the default port is found, initialized the readerportList=CommPortIdentifier.getPortIdentifiers();while(portList.hasMoreElements()){portId=(CommPortIdentifier)portList.nextElement();if(portId.getPortType()==CommPortIdentifier.PORT_SERIAL){if(portId.getName().equals(defaultPort)){Msg("Found port: "+defaultPort);portFound=true;// init reader threadnulltest();}}}if(!portFound){Msg("port "+defaultPort+" not found.");}}privatevoidIdentificarActionPerformed(java.awt.event.ActionEventevt){// TODO add your handling code here:}@SuppressWarnings("static-access")privatevoidPortasActionPerformed(java.awt.event.ActionEventevt){}privatevoidenviarWriteActionPerformed(java.awt.event.ActionEventevt){initwritetoport();writetoport();}privatevoidwriteActionPerformed(java.awt.event.ActionEventevt){enviarWrite.getAction();}privatevoidreadAncestorAdded(javax.swing.event.AncestorEventevt){}privatevoiddesconectarActionPerformed(java.awt.event.ActionEventevt){}privatevoidreadInputMethodTextChanged(java.awt.event.InputMethodEventevt){Msg(msg.toString());}/** * @param args the command line arguments */publicstaticvoidmain(Stringargs[]){java.awt.EventQueue.invokeLater(newRunnable(){publicvoidrun(){newAeSTeste().setVisible(true);}});}// Variables declaration - do not modifyprivatejavax.swing.JMenuBarBarraDeMenus;privatejavax.swing.JButtonEntrada;privatejavax.swing.JButtonIdentificar;privatejavax.swing.JComboBoxPortas;privatejavax.swing.JMenuItemRegistroDeEventos;privatejavax.swing.JButtonSaida;privatejavax.swing.JMenuVersaoSoftware;privatejavax.swing.JButtonconectar;privatejavax.swing.JButtondesconectar;privatejavax.swing.JButtonenviarWrite;privatejavax.swing.JButtonexit;privatejavax.swing.JFramejFrame1;privatejavax.swing.JLabeljLabel1;privatejavax.swing.JLabeljLabel2;privatejavax.swing.JMenujMenu1;privatejavax.swing.JScrollBarjScrollBar1;privatejavax.swing.JScrollPanejScrollPane1;privatejavax.swing.JScrollPanejScrollPane2;privatejavax.swing.JTextAreajTextArea1;privatejavax.swing.JButtonlogTIMS;privatejavax.swing.JTextArearead;privatejavax.swing.JTextFieldwrite;privateorg.jdesktop.beansbinding.BindingGroupbindingGroup;// End of variables declarationpublicvoidinitwritetoport(){// initwritetoport() assumes that the port has already been opened and// initialized by "public nulltest()"try{// get the outputstreamoutputStream=serialPort.getOutputStream();}catch(IOExceptione){}try{// activate the OUTPUT_BUFFER_EMPTY notifierserialPort.notifyOnOutputEmpty(true);}catch(Exceptione){Msg("Error setting event notification");System.out.println(e.toString());System.exit(-1);}}publicvoidwritetoport(){Msg("Writing \""+messageString+"\" to "+serialPort.getName());try{messageString=write.getText();// write string to serial portoutputStream.write(messageString.getBytes());}catch(IOExceptione){}}publicvoidnulltest(){// initalize serial porttry{serialPort=(SerialPort)portId.open("SimpleReadApp",2000);}catch(PortInUseExceptione){}try{inputStream=serialPort.getInputStream();}catch(IOExceptione){}try{serialPort.addEventListener(this);}catch(TooManyListenersExceptione){}// activate the DATA_AVAILABLE notifierserialPort.notifyOnDataAvailable(true);try{// set port parametersserialPort.setSerialPortParams(56000,SerialPort.DATABITS_8,SerialPort.STOPBITS_1,SerialPort.PARITY_NONE);}catch(UnsupportedCommOperationExceptione){}// start the read threadreadThread=newThread(this);readThread.start();}publicvoidrun(){initwritetoport();}publicvoidserialEvent(SerialPortEventspe){switch(spe.getEventType()){caseSerialPortEvent.BI:caseSerialPortEvent.OE:caseSerialPortEvent.FE:caseSerialPortEvent.PE:caseSerialPortEvent.CD:caseSerialPortEvent.CTS:caseSerialPortEvent.DSR:caseSerialPortEvent.RI:caseSerialPortEvent.OUTPUT_BUFFER_EMPTY:break;caseSerialPortEvent.DATA_AVAILABLE:intreadBuffer;Stringresult=newString();try{while(inputStream.available()>0){readBuffer=inputStream.read();result=result+(char)readBuffer;}System.out.println("Read: "+result);}catch(IOExceptione){}break;}}publicvoidMsg(Stringstring){msg=newString(string);}}
banger
entaum se vc perceber, tem ai ao inves de System.out.println, tem um Msg, este msg é onde eu gostaria que as menssagens fossem para eu printalas no JTextArea.
banger
puts era isso mesmo kra vlw!!!
ViniGodoy
Substitua seu método Msg pode:
public void Msg(String string) {
read.append(string);
}
banger
entaum eu troquei o System por append e resolveu mas testei o metodo e tambem resolvel!!!