Wątek przeniesiony 2015-05-19 08:57 z Java przez bogdans.

ActionListener - tryb graficzny

0

Witam,
jest mi ktoś w stanie powiedzieć jak użyć ActionListener?
dokładnie chodzi mi o to aby po kliknięciu w przycisk zmieniał się kolor "okna głównego"

Chwilowo mój kod wygląda tak i nie mogę tego rozgryźć :

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;


public class kolory 
{
	public static void main(String[] args)
	{
		JFrame frame = new JFrame(" RED | GREEN | BLUE ");					// utworzenie okienka
		frame.setSize(250, 280);											// rozmiar okna
		frame.setLocation(550, 250);										// jego lokalizacja
		frame.setResizable(false);											// dzięki temu nie zmienisz rozmiaru okna
		frame.setLayout(null);												//
		
		
		JButton button1 = new JButton("RED");							// utworzenie przycisku RED
		button1.setBounds(10, 10, 60, 40);
		button1.setBorder(null);
		frame.add(button1);
		
		JButton button2 = new JButton("GREEN");							// utworzenie przycisku GREEN
		button2.setBounds(93, 10, 60, 40);
		button2.setBorder(null);
		frame.add(button2);
		
		JButton button3 = new JButton("BLUE");							// utworzenie przycisku BLUE
		button3.setBounds(176, 10, 60, 40);
		button3.setBorder(null);
		frame.add(button3);
		
		button1.addActionListener(new ActionListener()				// po wcisnieciu RED ma byc czerwony ekran ^^
		{
			public void actionPerformed(ActionEvent arg0)
			{
				
			}
		});
		
		
		
		frame.setVisible(true);
	}
	
}
0

frame.setbackground(Color.RED);

ale przyciski powinny chyba być wpięte w JPanel, ale niech się jeszcze wypowie ktoś mądrzejszy ode mnie

0

to co mi napisałeś zrobi tak, że te przyciski będą miały swoje kolory, a mi chodzi o to, że jak klikne na GRREN okno zrobi się zielone, itd :)
ale dzięki za odpowiedź ;)

1

Po kliknięciu na przycisk "RED" tło robi się czerwone.

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

public class Costam
{
	public static void main(String[] args) 
	{
		JFrame f = new JFrame();
		final JPanel p = new JPanel();
		JButton b = new JButton("RED");
		
		b.addActionListener(new ActionListener() {
			
			@Override
			public void actionPerformed(ActionEvent e) {
				p.setBackground(Color.RED);
			}
		});
		
		f.setSize(300, 200);
		p.add(b);
		f.add(p);
		
	        f.setVisible(true);
               //dopisałem poniższy wiersz - bogdans
               f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
	}
}
0

Resident, dzięki wielkie za odpowiedź :P
Twój kod jest prościej napisany a działa tak jak powinien :P
kolejne przyciski już dorobiłem i wszystko śmiga jak należy ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1