/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
newbie: Space og enter tast til KeyListene~
Fra : Unen


Dato : 26-05-01 12:39

Hej!

Jeg ønsker at registrere hvis [enter] eller [space] tastes. Jeg har
implementeret Keylistener. Jeg skal formodentlig så bruge nogen ligende "if
(trykkedeTast==space)...."

Håber nogen kan komme med et lille hint og på forhånd tak for hjælpen :0)





 
 
IB (26-05-2001)
Kommentar
Fra : IB


Dato : 26-05-01 12:54


"Unen" <**REMOVE**duper@post.tele.dk**REMOVE**> wrote in message
news:9eo4bu$kee$1@news.inet.tele.dk...
> Hej!
>
> Jeg ønsker at registrere hvis [enter] eller [space] tastes. Jeg har
> implementeret Keylistener. Jeg skal formodentlig så bruge nogen ligende
"if
> (trykkedeTast==space)...."

Din formodning er korrekt:

void keyPressed(KeyEvent e) {
if ( e.getKeyCode() == e.VK_ENTER)
{
.....
}
else if ( e.getKeyCode() == e.VK_SPACE)
{
.....
}
}

se desuden dokumentationen for KeyEvent for andre taste navne...

IB



Unen (26-05-2001)
Kommentar
Fra : Unen


Dato : 26-05-01 13:18

Takker mange gange. Det var perfekt :0)

"IB" <IB@kefas.dk00000> wrote in message
news:9eo5ft$1o3f$1@news.cybercity.dk...
>
> "Unen" <**REMOVE**duper@post.tele.dk**REMOVE**> wrote in message
> news:9eo4bu$kee$1@news.inet.tele.dk...
> > Hej!
> >
> > Jeg ønsker at registrere hvis [enter] eller [space] tastes. Jeg har
> > implementeret Keylistener. Jeg skal formodentlig så bruge nogen ligende
> "if
> > (trykkedeTast==space)...."
>
> Din formodning er korrekt:
>
> void keyPressed(KeyEvent e) {
> if ( e.getKeyCode() == e.VK_ENTER)
> {
> .....
> }
> else if ( e.getKeyCode() == e.VK_SPACE)
> {
> .....
> }
> }
>
> se desuden dokumentationen for KeyEvent for andre taste navne...
>
> IB
>
>



Martin Møller Bæk (26-05-2001)
Kommentar
Fra : Martin Møller Bæk


Dato : 26-05-01 14:57

IB wrote:

> "> Jeg ønsker at registrere hvis [enter] eller [space] tastes. Jeg har
> > implementeret Keylistener. Jeg skal formodentlig så bruge nogen ligende
> "if
> > (trykkedeTast==space)...."
>

Jeg har tænkt på at lave noget lignende. Hvis man
skal have det til at virke overalt i programmet,
selvom layoutet skifter, på hvad skal man så bruge
addKeyListener(..). Kan man add'e den på framen
eller skal den på hver eneste grafisk komponent.
Eller hvad gør man. Det er vel addKeyListener(..)
man bruger.

Martin Bæk


Thomas Mouritsen (27-05-2001)
Kommentar
Fra : Thomas Mouritsen


Dato : 27-05-01 22:20

Jeg lytter...

Jeg mangler en måde at få programmet til at reagere på F1 (hjælp) i hele
programmet.

Thomas Mouritsen
"Martin Møller Bæk" <martin@aflame.dk> skrev i en meddelelse
news:3B0FB618.CF1BC55C@aflame.dk...
> IB wrote:
>
> > "> Jeg ønsker at registrere hvis [enter] eller [space] tastes. Jeg har
> > > implementeret Keylistener. Jeg skal formodentlig så bruge nogen
ligende
> > "if
> > > (trykkedeTast==space)...."
> >
>
> Jeg har tænkt på at lave noget lignende. Hvis man
> skal have det til at virke overalt i programmet,
> selvom layoutet skifter, på hvad skal man så bruge
> addKeyListener(..). Kan man add'e den på framen
> eller skal den på hver eneste grafisk komponent.
> Eller hvad gør man. Det er vel addKeyListener(..)
> man bruger.
>
> Martin Bæk
>



Michael Pedersen (27-05-2001)
Kommentar
Fra : Michael Pedersen


Dato : 27-05-01 22:59

Her er et lille eksempel på hvordan man kan anvende keylistners. De vise
hvordan F1 er tildelt et menupunkt og
space og enter opfanges af framen.(Det kan man selvfølgelig også gøre med F1
hvis man ikke vil have en menu)

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import com.borland.jbcl.layout.*;

public class Frame1 extends JFrame {
JPanel contentPane;
JMenuBar mainMenu = new JMenuBar();
JMenu helpMenu = new JMenu("Hjælp");
JMenuItem helpMenuItem = new JMenuItem("Indhold");
JTextField output = new JTextField();


public Frame1() {
this.getContentPane().add(output);

helpMenu.add(helpMenuItem);
mainMenu.add(helpMenu);

/* her håndteres aktivering af menuen med F1*/

helpMenuItem.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.even
t.KeyEvent.VK_F1,0));
helpMenuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
output.setText("HJÆLP");
}
});

/*Her håndteres "space" og "enter" ved at tilføje en keylistener til
Framen*/
this.addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent e){
if(e.getKeyCode()==java.awt.event.KeyEvent.VK_ENTER){
output.setText("ENTER");
}
else if(e.getKeyCode()==java.awt.event.KeyEvent.VK_SPACE){
output.setText("SPACE");
}
}
});

this.setJMenuBar(mainMenu);
this.pack();
this.show();
}
}

Noget i den retning i havde i tankerne?

/mic


"Thomas Mouritsen" <thomas@mouritsen.dk> wrote in message
news:9erqtb$k5u$1@sunsite.dk...
> Jeg lytter...
>
> Jeg mangler en måde at få programmet til at reagere på F1 (hjælp) i hele
> programmet.
>
> Thomas Mouritsen
> "Martin Møller Bæk" <martin@aflame.dk> skrev i en meddelelse
> news:3B0FB618.CF1BC55C@aflame.dk...
> > IB wrote:
> >
> > > "> Jeg ønsker at registrere hvis [enter] eller [space] tastes. Jeg har
> > > > implementeret Keylistener. Jeg skal formodentlig så bruge nogen
> ligende
> > > "if
> > > > (trykkedeTast==space)...."
> > >
> >
> > Jeg har tænkt på at lave noget lignende. Hvis man
> > skal have det til at virke overalt i programmet,
> > selvom layoutet skifter, på hvad skal man så bruge
> > addKeyListener(..). Kan man add'e den på framen
> > eller skal den på hver eneste grafisk komponent.
> > Eller hvad gør man. Det er vel addKeyListener(..)
> > man bruger.
> >
> > Martin Bæk
> >
>
>



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste