Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Zmiana koloru kółeczka po naciśnięciu - programowanie java

scy12 24 Sie 2010 09:31 2605 4
  • #1 24 Sie 2010 09:31
    scy12
    Poziom 12  

    Jak zrobić aby dwa kółeczka były koloru pomarańczowego po naciśnięciu przycisku kolor były zielone .

    Code:

    package javaapplication10;

    import java.applet.Applet;
    import java.awt.Button;
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.event.*;
    import java.awt.event.ActionListener;

    public class NewApplet extends Applet implements ActionListener {
     Color kolor= Color.ORANGE;
        Button t = new Button ("kolor");

        public void init() {
            add(t);
    t.addActionListener(this);
        }
        public void paint (Graphics g)
        {g.fillOval(120, 75, 10, 10);
    g.fillOval(150, 75, 10, 10);
        }
        public void actionPerformed(ActionEvent e)
    {
    Object ob=e.getSource();
    if(ob==t) kolor= Color.GREEN;
    repaint();
    }
    }

    0 4
  • #2 24 Sie 2010 14:55
    przemo_wielki
    Poziom 23  

    W metodzie paint() na samym początku daj ustawienie koloru:

    Code:
    g.setColor(kolor);

    0
  • #3 24 Sie 2010 20:30
    scy12
    Poziom 12  

    Jak zrobić aby po naciśnięciu przycisku pow kółeczka zwiększały swoją objętość

    Code:

    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */

    package javaapplication10;

    import java.applet.Applet;
    import java.awt.Button;
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.event.*;
    import java.awt.event.ActionListener;

    public class NewApplet extends Applet implements ActionListener {

        Button t = new Button ("kolor");
        Button m = new Button ("pow");
    Color kolor= Color.ORANGE;
        public void init() {
            add(t);
            add(m);
            m.addActionListener(this);
    t.addActionListener(this);
        }
        public void paint (Graphics g)
        {
            g.setColor(kolor);
            g.fillOval(120, 75, 10, 10);
    g.fillOval(150, 75, 10, 10);


        }
        public void actionPerformed(ActionEvent e)
    {
    Object ob=e.getSource();
    if(ob==t) kolor= Color.GREEN;
    repaint();
    }
    }

    0
  • #4 24 Sie 2010 22:25
    McMonster
    Poziom 32  

    Chciałem napisać "kupić trójwymiarowy monitor", ale w końcu powierzchnia nie ma objętości (pedanci matematyczni proszeni są o nie zaczynanie żadnej dyskusji), więc nie można jej zwiększać. ;)

    Dodajesz jakieś pole w klasie NewApplet, w którym będzie się znajdował rozmiar figury, kolejny if lub blok else do istniejącego (można to zamienić na ładniejszy switch, ale trzeba by było pokombinować) w słuchaczu zdarzeń, zastępujesz dwa ostatnie parametry wywoływanej metody fillOval() na to pole, które dodałeś i metodę, która będzie wywołana po naciśnięciu przycisku i która tylko dodaje jakąś stałą wartość do tego pola.

    0
  • #5 25 Sie 2010 10:53
    przemo_wielki
    Poziom 23  

    Może byś się trochę wysilił, metody paint() oraz actionPerformed() nawet nie zmieniłeś ...

    0