Hvis du ikke kan få det til at virke, kan du prøve at lave én mousehandler som kontrollerer hvilken component der er tale om, vha. if eller switchstatements ....
\"ser\" textfield? hvad mener du. Din kode som den ser ud nu, sætter ta til en tom streng uanset om du klikker på textarea eller textfield. Du skal lave nogle if sætninger som finder ud af hvad der er klikket på, så du kan reagere på det...
Action commands kan nemlig bruge til at skelne mellem forskellige komponenter (Labels, TextAreas, TextFields etc.). Hvis du bruger dem kan du nøjes med en handler hvor mouseClicked indeholder en if-sætning som f.eks.
if (event.getActionCommand()== <action command for textfield> ) { gør noget } else if (event.getActionCommand()== <action command for text area>) { gør noget andet }
i mouseClicked! Som det er nu, sættes ta\'s tekst til \"\" hver gang du klikker på en component som bruge denne mousehandler, det vil sige både dit tekst field og dit tekst area.
Mht action command så kan du teste hvilken component der giver hvad ved at lave følgende:
public void mouseClicked(MouseEvent e) { System.out.println(\"Action command: \" +e.getActionCommand()); }
køre programmet, klikke på dine komponenter en ad gangen og læse resultatet i dos vinduet. Herefter kan du lave en if-sætning som den jeg angav i går hvor du erstatter < ... > med det du fik fra kørslen...
Synes godt om
Ny brugerNybegynder
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.