Avatar billede dresen Nybegynder
03. juni 2003 - 14:46 Der er 16 kommentarer og
1 løsning

Kan KeyEvent udløse en JPopUpMenu

Øjeblik...skal lige væk fra reklamen
Avatar billede riversen Nybegynder
03. juni 2003 - 14:49 #1
???
Avatar billede dresen Nybegynder
03. juni 2003 - 14:51 #2
Hej...

Jeg har til opgave at lave et GUI-interface, hvor en bruger skal kunne indtaste tekst.  Under indtastningen skal brugeren kunne præsenteres for hjælpetekst, for at effektiviserer indtastningen.

Eks.

Hvis brugeren f.eks vælger at taste: erhv
Avatar billede riversen Nybegynder
03. juni 2003 - 14:54 #3
ja, du laver bare en KeyListener/KeyAdapter til formålet og tester hvad de 4 sidste tegn er
Avatar billede dresen Nybegynder
03. juni 2003 - 14:56 #4
(fik lige en hjerneblødning :)

|
-> så skal brugeren præsenteres for følgende muligheder

      - erhverv
      - erhvervsavisen


Jeg kunne godt tænke mig en løsning, hvor der fremkom et popup-vindue i stil med JPopMenu, hvor man så kunne vælge det hjælpe-ord man ønsker at benytte, eller evt. afvise.


Nogle forslag til klasser og metoder?
Avatar billede riversen Nybegynder
03. juni 2003 - 14:59 #5
samme som ovenstående. Implementationen kan du så ligge i keyTyped metoden, som du overrider.
Avatar billede dresen Nybegynder
03. juni 2003 - 15:07 #6
Men kan jeg få JPopUp til at fremkomme, som reaktionen på et keyevent??
Avatar billede dresen Nybegynder
03. juni 2003 - 15:08 #7
Må indrømme jeg ikke har læst så meget på det endnu, ville prøve at indkredse emnet, før jeg gik igang.
Avatar billede dresen Nybegynder
03. juni 2003 - 15:14 #8
riversen -> du har vel egentlig svaret på min overskrift, jeg vil læse på det, og se hvor det bringer mig hen.-

Tak for hjælpen
Avatar billede riversen Nybegynder
03. juni 2003 - 16:02 #9
jeg vender lige tilbage med noget mere uddybende...
Avatar billede riversen Nybegynder
03. juni 2003 - 17:07 #10
tilføj

KeyAdapter ka = new KeyAdapter()
{
  public void keyTyped( KeyEvent e )
  {
    // lav popupmenu her
  }
};

//tilføj keylistener på den komponent du vil lytte på
Avatar billede dresen Nybegynder
03. juni 2003 - 21:24 #11
Jeg hænger desværre fast i en anden del af min opgave lige nu, kommer først til at se på det imorgen.

Tak for hjælpen
Avatar billede riversen Nybegynder
03. juni 2003 - 21:26 #12
ok
Avatar billede dresen Nybegynder
03. juni 2003 - 21:28 #13
Vil jeg kunne trække på dine veksler imorgen - safremt jeg får problemer, skal nok oprette nye spørgsmål med friske point
Avatar billede riversen Nybegynder
03. juni 2003 - 21:29 #14
skidt med det...du skriver bare heller eller over icq
Avatar billede dresen Nybegynder
03. juni 2003 - 21:30 #15
Mange tak, jeg vender tilbage!!!
Avatar billede whispers Nybegynder
05. juni 2003 - 16:41 #16
dresen -> Du skulle da ikke tilfældigvis være DØK'er på 1. år???

Anyways, jeg har selv prøvet det der med popups, som kommer løbende imens brugeren taster. Du kan sagtens tilføje en funktion under din metode.

Jeg havde skrevet noget lignende:

private JPopupMenu menu;
private JMenuItem item;


menu = new JPopupMenu();

public void keyListener (KeyEvent e)
{
  item = new JMenuItem (ord); // Hvor ord er den streng brugeren skal se
  menu.add(item);
  menu.setVisible(true);
  menu.setLocation(x, y);
}

Sådan får du i hvert fald vist din popup menu. Til gengæl kan jeg ikke hjælpe dig med at få underpunkterne i menuen til at fungere ordentligt, da jeg selv havde problemer med dette.

Håber det hjælper.

-Whispers
Avatar billede whispers Nybegynder
05. juni 2003 - 16:48 #17
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester