» »

Java zaznavanje pritiska na določeno tipko

Java zaznavanje pritiska na določeno tipko

l0g1t3ch ::

Kako bi v spodnji kodi naredu, da bi ko bi nekal napisal v vnosno vrstico in pritisnil enter bi se izvedlo tole

if(e.getSource() == send)
{
//todo
}

sepravi pritisk na enter bi pomenil enako kot klik na gumb send


import java.net.*;
import java.io.*;
import java.applet.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*; 

public class RoomFrame extends JFrame implements ActionListener
{ 	
   	private JTextArea  display = new JTextArea();
   	private JTextField input   = new JTextField();
   	private JButton send, quit; 
	private String name, nick;

   	public RoomFrame(String n, String ni)
   	{ 
		name = n;
		nick = ni;
		setSize( 400, 400 );
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        setTitle( "Ime kanala: " + name );
		setLocation(200 , 200); //nastavi pozicijo	

		send = new JButton("Send");
		send.addActionListener(this);		
		quit = new JButton("Quit");	
		quit.addActionListener(this);
 
		JPanel keys = new JPanel(); 
		keys.setLayout(new GridLayout(1,2));
      	keys.add(quit);

      	JPanel south = new JPanel(); 
		south.setLayout(new BorderLayout());

      	south.add("West", keys);
		south.add("Center", input);  
		south.add("East", send);

      	JLabel title = new JLabel("Simple Chat Client Applet", JLabel.CENTER);
      	title.setFont(new Font("Helvetica", Font.BOLD, 14));
      	setLayout(new BorderLayout());
   		add("North", title); add("Center", display);  add("South",  south);

		input.requestFocus(); 
		setVisible(true);  //novejši nacin		
	}



	public void actionPerformed(ActionEvent e)
    { 
		if(e.getSource() == send)
		{
                   //todo
		}
		if(e.getSource() == quit)
		{
                   //todo
		}		
    }  

	//izpišemo sporocilo na zaslon 	
   	public synchronized void println(String msg)
   	{  
		display.append(msg + "\n"); 
	}
	
}




morbo ::

komponenti prilepi KeyListener in v njegovi metodi keyReleased() poženi stvar

l0g1t3ch ::

Sicer sm mu v mislih nekak drugač nek key binding sam pomoje bo tole tud ok. Ker 1x sm že delu neki sam z meni vrstico in meniji in vem d je vsaj za tist obstajal neki d si priredil pritisk neke tipke d je blo isto kot če bi kliknil na določeno izbiro v meniju

morbo ::

Jst sem do sedaj vedno delal s KeyListenerjem... V preprostem GUI-ju (kar se mi zdi tvoj primer) lahko poslusalca pripopas kar na JFrame, kot anonimni KeyAdapter in implementiras keyReleased()...

BTW, How to Use Key Bindings


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[java] Osnovna vprašanja

Oddelek: Programiranje
372647 (1654) killa bee
»

[Java] Ne zažene appleta

Oddelek: Programiranje
51219 (1152) iggy
»

[JAVA] branje iz datoteke

Oddelek: Programiranje
242424 (2059) Bela01
»

[java] opcijsko okno

Oddelek: Programiranje
102095 (1876) infiniteLoop
»

[NALOGA][Java] Težave pri pisanju slikarja

Oddelek: Programiranje
202309 (1951) l0g1t3ch

Več podobnih tem