Java-händelser och hur de fungerar med evenemangslytare

En händelse i Java är ett objekt som skapas när något ändras i ett grafiskt användargränssnitt. Om en användare klickar på en knapp, klickar på en kombinationsruta eller skriver in tecken i ett textfält etc., utlöser en händelse, skapar det relevanta händelseobjektet. Detta beteende är en del av Java: s händelseshanteringsmekanism och ingår i Swing GUI-biblioteket.

Låt oss till exempel säga att vi har en JButton. Om en användare klickar på JButton, en knappklickhändelse utlöses, händelsen skapas och den skickas till relevant händelse lyssnare (i det här fallet Action). Den relevanta lyssnaren har implementerat kod som bestämmer vilken åtgärd som ska vidtas när händelsen inträffar.

Observera att en händelseskälla måste kopplas ihop med en händelse lyssnare, eller dess utlösning kommer att resultera i någon åtgärd.

Hur händelser fungerar

Eventhantering i Java består av två viktiga element:

  • Händelsekällan, som är ett objekt som skapas när en händelse inträffar. Java tillhandahåller flera typer av dessa händelseskällor, som diskuteras i avsnittet Typer av evenemang Nedan.
  • instagram viewer
  • Evenemangets lyssnare, objektet som "lyssnar" på händelser och bearbetar dem när de inträffar.

Det finns flera typer av händelser och lyssnare i Java: varje typ av händelse är knuten till en motsvarande lyssnare. För denna diskussion, låt oss överväga en vanlig typ av händelse, en actionhändelse representerad av Java-klassen Action, som utlöses när en användare klickar på en knapp eller objektet i en lista.

Vid användarens handling, en Action objekt som motsvarar den aktuella åtgärden skapas. Detta objekt innehåller både information om händelsekällan och den specifika åtgärd som användaren vidtar. Detta händelseobjekt skickas sedan till motsvarande Action objektets metod:

 void actionPerformed (ActionEvent e)

Den här metoden körs och returnerar lämpligt GUI-svar, som kan vara att öppna eller stänga en dialog, ladda ner en fil, ge en digital signatur eller någon annan av de otaliga åtgärder som finns tillgängliga för användare i en gränssnitt.

Typer av evenemang

Här är några av de vanligaste typerna av händelser i Java:

  • Action: Representerar att ett grafiskt element klickas, till exempel en knapp eller ett objekt i en lista. Relaterad lyssnare: Action.
  • ContainerEvent: Representerar en händelse som inträffar i själva GUI: s behållare, till exempel om en användare lägger till eller tar bort ett objekt från gränssnittet. Relaterad lyssnare: ContainerListener.
  • KeyEvent: Representerar en händelse där användaren trycker på, skriver eller släpper en tangent. Relaterad lyssnare: KeyListener.
  • WindowEvent: Representerar en händelse som hänför sig till ett fönster, till exempel när ett fönster är stängt, aktiverat eller inaktiverat. Relaterad lyssnare: Window.
  • Mouseevent: Representerar alla händelser relaterade till en mus, till exempel när en mus klickas eller trycks ned. Relaterad lyssnare: MouseListener.

Observera att flera lyssnare och händelsekällor kan interagera med varandra. Exempelvis kan flera händelser registreras av en enda lyssnare om de är av samma typ. Detta innebär att för en liknande uppsättning komponenter som utför samma typ av åtgärd kan en händelse lyssnaren hantera alla händelser. På samma sätt kan en enda händelse vara bunden till flera lyssnare om det passar programmets design (även om det är mindre vanligt).

instagram story viewer