Hvordan endre farger i Java med hendelser

Hvordan endre farger i Java med hendelser


Java action Lyttere håndtere hendelser. En klasse som implementerer en handling lytteren gjør en handling som skal utføres basert på en bestemt trigger. Action Lyttere tillate grafiske brukergrensesnitt eller GUI, for å være interaktiv. Når et GUI er bygget, action Lyttere bli knyttet til de spesifikke komponentene i GUI. Når en bruker utfører en handling på en komponent, slik som å klikke på en knapp, avskjærer Handling List denne hendelsen, og utfører sin kode.

Bruksanvisning

1 Lag en klasse som vil forlenge Java-klassen JFrame og implementere grensesnittet. Den JFrame klassen skaper en JFrame, som vil være hovedvinduet for GUI. Åpne din tekst editor og skriver inn følgende kode:

importere javax.swing. *;

importere java.awt. *;

importere java.awt.event. *;

public class TestClass utvider JFrame implements Action {

offentlig TestClass () {

}

}

2 Lag klassevariabler som skal brukes med handlingen Listener. I en teksteditor, skriv inn følgende kode:

JLabel etikett = new JLabel ( "Color her");

Color [] farger = {Color.black, Color.red, Color.yellow};

int teller = 0;

offentlig TestClass () {

}

...

Denne koden skaper en JLabel kalt "label" som vil fungere som lerret. En rekke er opprettet som vil lagre Farge objekter for å endre bakgrunnsfargen på JLabel, og et tall "teller" er laget for å holde oversikt over hva indeksen i matrisen vi er på.

3 Lag en container og en knapp. Skriv inn følgende kode inn i teksteditor:

offentlig Container test () {

JPanel mPane = new JPanel();

JButton knapp = new JButton ( "Submit");

button.addActionListener (denne);

mPane.add (etikett);

mPane.add (knapp);

tilbake mPane;

}

Denne koden skaper et JPanel som vil fungere som den viktigste rammen for GUI. Det skaper en JButton og tildeler Action til det. Når knappen trykkes, blir actionPerformed () metode som kalles, og en handling vil bli utført.

4 Opprett actionPerformed () -metoden. I en teksteditor, skriv inn følgende kode:

public void actionPerformed (Actione e) {

label.setOpaque(true);

if (i & lt; 3) {

label.setBackground (farger [i]);

teller ++;

}

ellers

telleren = 0;

}

Denne koden endrer bakgrunnsfargen på etiketten og deretter intervaller på "counter" variable å gå gjennom farger array. Hvis telleren når "3", er det tilbakestilles til "0"

5 Lag den viktigste metoden. Skriv inn følgende kode:

public static void main (String [] args) {

JFrame ramme = new JFrame ( "");

TestClass tc = nye TestClass ();

frame.setContentPane (tc.test ());

frame.setVisible (true);

frame.setSize (200 100);

}