Re: How to combine charac
To: comp.lang.java.gui
On 2008-06-23 05:27 +0100, Chris allegedly wrote:
On Jun 22, 8:18 pm, Chris <chrislia...@gmail.com> wrote:
Okay, I'm still not getting it.
Does anyone know how to combine char's from a KeyEvent to combine into
a string?
Thank you....
My current code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class InputObject {
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable() {
public void run() {
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextField tf = new JTextField(30);
tf.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent ke)
{
String s = "" + ke.getKeyChar();
final StringBuffer strb = new StringBuffer (s);
if(!s.equals(" "))
{
System.out.println (strb.toString());
strb.append (s);
}
ke.consume();
}
});
f.add(tf,BorderLayout.CENTER);
f.pack();
f.setVisible(true);
}
});
}
}- Hide quoted text -
- Show quoted text -
Nevermind. Got it...
You're welcome.
Note that instead of writing...
String s = "" + ke.getKeyChar();
....it would be cleaner to use...
String s = String.valueOf(ke.getKeyChar());
....which is what happens under the hood anyway, except that the second
way avoids one additional Object (a StringBuilder) being instanciated.
Better yet, you can do your comparision with the char primitive:
char c = ke.getKeyChar();
if( c != ' ' ){ // double quotes quote Strings, single quotes, chars
buffer.append( c );
}
else{
System.out.println( buffer.toString() );
buffer.setLength( 0 );
}
--
DF.
to reply privately, change the top-level domain
in the FROM address from "invalid" to "net"
---
* Synchronet * The Whitehouse BBS --- whitehouse.hulds.com --- check it out free usenet!
--- Synchronet 3.15a-Win32 NewsLink 1.92
Time Warp of the Future BBS - telnet://time.synchro.net:24