Farbe?

Status
Nicht offen für weitere Antworten.

Bierhumpen

Bekanntes Mitglied
Hi,

wir beschäftigen uns zur Zeit mit Grafiken in Java und ich habe folgendes Problem:

ich habe ein programm geschrieben dass zufälligerweise rechtecke oder ellipsen zeichnet.
Eigentlich sollte auch die Farbe zufall sein.

Nur gehts irgendwie nicht.

wenn ich mache g.setColor(Color(c))
sagt er mir :
D:\Malstunde.java:37: cannot find symbol

symbol : method Color(int)

location: class Rect

g.setColor(Color(c));


wenn ich mache g.setColor(c)
sagt er mir:
D:\Malstunde.java:18: setColor(java.awt.Color) in java.awt.Graphics cannot be applied to (int)

g.setColor(c);


Was mache ich falsch?!
Die Farbe wird in einem Int Wert zwischen 0 und 255 übergeben.


Code:
import javax.swing.*;        
import java.awt.*;
import java.awt.event.*;

class Oval{
    private int x,y,c;
    private double w, h;
    
    Oval(int x, int y, double width, double heigth, int c){
        this.x=x;
        this.y=y;
        w=width;    
        h=heigth;
        this.c=c;
    }
    
    void drawMe (Graphics g){
        g.setColor(c);
        g.fillOval((int)x, (int)y, (int)w, (int)h);
    }

}

class Rect{
    private int x,y,c;
    private double w, h;
    
    Rect(int x, int y, double width, double heigth, int c){
        this.x=x;
        this.y=y;
        w=width;    
        h=heigth;
        this.c=c;
    }
    
    void drawMe (Graphics g){
        g.setColor(Color(c));
        g.fillRect((int)x, (int)y, (int)w, (int)h);
    }

}

class MyFrame extends JFrame{
    MyFrame(){
        JFrame frame = new JFrame("Zeichnen von 12 Klecksen");
        frame.getContentPane().add(new Zeichenflaeche());
        frame.setSize(300,300);
        frame.setVisible(true);
        
        frame.addWindowListener(
            new WindowAdapter(){  
              public void windowClosing(WindowEvent e){ 
                System.exit(0); 
              }
           }
        );
    }
}

class Zeichenflaeche extends Canvas{
    
    int zufall(int anfang, int ende){
        return (int)(anfang+(Math.random()*(ende+1)));
    }
    
    double zufalldouble(int anfang, int ende){
        return anfang+(Math.random()*(ende+1));
    }
    
    public void paint (Graphics g){
        for (int i=0; i<12; i++){
            int x = zufall(0,400);
            int y = zufall(0,400);
            double width = zufalldouble(50,150);
            double heigth = zufalldouble(50,100);
            int farbe = zufall(0,255);
            int rectOrOval = zufall (1,100);
        
            if (rectOrOval>50){
                Rect rechteck = new Rect(x,y,width,heigth,farbe);
                rechteck.drawMe(g);
            }
            else{
                Oval oval = new Oval(x,y,width,heigth,farbe);
                oval.drawMe(g);
            }
        }            
    }
}

class Malstunde{

    public static void main (String [] args){
        MyFrame f = new MyFrame();
    }
}
 
F

frager

Gast
hi, also eine farbe besteht immer aus 3 elementen. (RGB) du musst also sowas machen:

Code:
g.setColor(new Color(123, 255, 33));

wenn du das zufällig machen willst, einfach ein random der fraben zwischen 0 und 255


gruß
 

Redfrettchen

Bekanntes Mitglied
Hi,

Die Farbe wird in einem Int Wert zwischen 0 und 255 übergeben.
In deinem Konstruktor vielleicht, aber g.setColor(Color) will auch wirklich ein java.awt.Color-Objekt haben. Was soll überhaupt eine Farbe mit dem Wert zwischen 0 und 255 sein? Verschlüsselt kann ich mir denken, aber eigentlich gibt man Farben in RGB mit drei ints an: einen für Rot, einen für Grün und einen für Blau.
Also müsste dein Konstruktor so umgeschrieben werden:
Code:
private Color col;
public Oval(int x, int y, double width, double height, Color col) {
...
this.col = col;
}

Und später musst du halt deine Objekte mit zufälligen Farben füttern:
Code:
Random gen = new Random();
Color col = new Color(gen.nextInt(255),gen.nextInt(255),gen.nextInt(255));
Oval oval = new Oval(gen.nextInt(400),gen.nextInt(400),gen.nextDouble(100),50+gen.nextDouble(50),col);
[/quote]
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Farbe des Striches eines TitledBorders ändern Java Basics - Anfänger-Themen 2
Jambolo Karten sortieren nach Rang und Farbe Java Basics - Anfänger-Themen 5
amelie123456 Objekt Farbe Quellcode Java Basics - Anfänger-Themen 4
D Ampel Programmieren die jede 10 sekunden ihre farbe wechselt Java Basics - Anfänger-Themen 6
Tom/S JLabel Icon Farbe Java Basics - Anfänger-Themen 2
C Farbe in der Auswahlliste (Direkte Reaktion auf Änderung) Java Basics - Anfänger-Themen 3
M Mit KeyListener Farbe von Label ändern Java Basics - Anfänger-Themen 13
B Eclipse Tabellen Farbe ändern? Java Basics - Anfänger-Themen 2
J Probleme bei der Umwandlung einer Farbe von Hex zu RGB Java Basics - Anfänger-Themen 8
E Mastermind programmieren, wie den falschen Platz aber richtige Farbe schecken? Java Basics - Anfänger-Themen 23
W JLabel, Farbe durch Listener ändern Java Basics - Anfänger-Themen 6
D Mit Buttonklick Farbe der anderen Buttons verändern? Java Basics - Anfänger-Themen 2
D JButton soll Farbe von JTextfield ändern Java Basics - Anfänger-Themen 5
S Schriftart/Farbe im Grafikfenster ändern Java Basics - Anfänger-Themen 8
I Zähler, der erst wieder zählt nachdem Pixel wieder andere Farbe hat Java Basics - Anfänger-Themen 2
U Farbe meines Würfels jede sekunde ändern! Java Basics - Anfänger-Themen 5
X Bildabschnitt anhand der Farbe und messen Java Basics - Anfänger-Themen 4
S Farbe eine Zeile in JTable ändern, wenn JButton geklickt wurd Java Basics - Anfänger-Themen 4
A Dateiformat mit 100%iger Farbe Java Basics - Anfänger-Themen 6
M Punkt auf eine Farbe prüfen Java Basics - Anfänger-Themen 8
B Methode zum ändern der Farbe? Java Basics - Anfänger-Themen 20
J Bild mit transparenter Farbe Java Basics - Anfänger-Themen 10
T JLabel Farbe ändern, Problem Java Basics - Anfänger-Themen 2
R JTabbedPane - Farbe ändern Java Basics - Anfänger-Themen 4
L Farbe unter Cursor bestimmen Java Basics - Anfänger-Themen 5
B Farbe wählen ohne JColorChooser Java Basics - Anfänger-Themen 13
B JTextArea Farbe und Schrift aendern Java Basics - Anfänger-Themen 2
I Schriftart / farbe / größe bei Emailversand ändern Java Basics - Anfänger-Themen 17
K Farbe heller machen Java Basics - Anfänger-Themen 4
H Farbe setzen Java Basics - Anfänger-Themen 5
D Text Farbe Java Basics - Anfänger-Themen 7
T Ausgabe in Farbe Java Basics - Anfänger-Themen 5
T Die deutsche Flagge :) . Farbe ausgeben Java Basics - Anfänger-Themen 4
G jTable schriftgröße und -farbe ändern? Java Basics - Anfänger-Themen 2
A Im Chat eigenen Beitrag in Farbe zeigen Java Basics - Anfänger-Themen 8
K jTextPane: Farbe des markierten Textes ändern und auslesen? Java Basics - Anfänger-Themen 3
S Zufällige Farbe Java Basics - Anfänger-Themen 5
M Text in der Farbe rot ausgeben Java Basics - Anfänger-Themen 9
L Dreieck soll Farbe ändern Java Basics - Anfänger-Themen 4
S Drucken in farbe Java Basics - Anfänger-Themen 4
D Die Farbe wird nicht angenommen Java Basics - Anfänger-Themen 2
P String eine rote Farbe geben? Java Basics - Anfänger-Themen 6
S Cursor Form und oder Farbe verändern, geht das???? Java Basics - Anfänger-Themen 4
K Übergabe der Variable für Farbe Java Basics - Anfänger-Themen 6
D SWING Anwendung mit 3 Buttons zum ändern der Farbe Java Basics - Anfänger-Themen 18
G Farbe des Pixels unter dem Mauszeiger? Java Basics - Anfänger-Themen 40
O Ein Sichtbarer Rahmen (in Farbe) um ein JPanel. Java Basics - Anfänger-Themen 5
F String in Farbe ausgeben Java Basics - Anfänger-Themen 2
D Farbe vom Scrollbalken ändern Java Basics - Anfänger-Themen 6
M Farbe der Titelleiste eines JFrames ändern Java Basics - Anfänger-Themen 6
C Farbe ins Spiel bringen Java Basics - Anfänger-Themen 2
C JTable: Farbe und Checkbox Java Basics - Anfänger-Themen 3
M Bei Swing Komponenten die Farbe ändern? Java Basics - Anfänger-Themen 12
P Button "Farbe wechseln" Java Basics - Anfänger-Themen 11
C Farbe in DOS Java Basics - Anfänger-Themen 2
F Ball soll auf Mausklick farbe ändern. Java Basics - Anfänger-Themen 10
G Farbe invertieren? Java Basics - Anfänger-Themen 14
C Farbe von ProgressBar ändern Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben