Farbige Lebensleiste mit Graphics?

SchalliLP

Aktives Mitglied
Hallo,
Ich programmiere gerade ein kleines Spiel und bin auf eine kleine Hürde gestoßen...

Unzwar möchte ich an bestimmten stellen des Frames ein farbiges Rechteck zeichnen lassen,

Wenn ich allerdings jetzt
Java:
Graphics g = null;
		
		g.setColor(Color.RED);
		g.fillRect((int)(2.5*(xSize/100)), (10*(ySize/100)), (20*(xSize/100)), (80*(ySize/100))+30);
 
		g.setColor(Color.BLACK);
		g.drawRect((int)(2.5*(xSize/100)), (10*(ySize/100)), (20*(xSize/100)), (80*(ySize/100))+30);
einfüge und auch
import java.awt.Graphics;
importiere gibt es beim ausführen folgende Fehlermeldung


Code:
java.lang.NullPointerException
	at Idle.<init>(Idle.java:314)
	at Idle$1.run(Idle.java:69)
	at java.awt.event.InvocationEvent.dispatch(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$400(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)



ich kann damit nichts anfangen und dementsprechend das Problem nicht lösen.

Meine 2. Frage ist; ich möchte aus einer Bilddatei die Farbe für das zeichnen nehmen, da ich dort einen schönen Farbverlauf habe den ich benutzen will.

Wie kann ich das bewerkstelliegen?

Hier mein Quellcode:
Java:
import java.awt.EventQueue;
import java.awt.Graphics;
import java.awt.Toolkit;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;

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

import javax.swing.SwingConstants;

import java.awt.event.MouseMotionAdapter;
import java.awt.Font;


public class Idle extends JFrame {
	
	double Diamanten = 0;
	long Diamanten_fake = 0;
	
	int Diamanten_fake_plus = 1;
	int Diamanten_fake_plus_PerSek = 0;
	
	double Diamanten_PerTouch_Upgrade_1_price = 5;
	int Diamanten_PerTouch_Upgrade_1_price_int = (int) Diamanten_PerTouch_Upgrade_1_price;
	
	double Diamanten_PerSek_Upgrade_1_price = 100;
	int Diamanten_PerSek_Upgrade_1_price_int = (int) Diamanten_PerSek_Upgrade_1_price;
	
	String BILDER_PFAD = "source/images/";
	
	ImageIcon Diamant_Bild_1 = new ImageIcon(BILDER_PFAD+"Diamant.png");
	ImageIcon Hintergrund = new ImageIcon(BILDER_PFAD+"Weiß.png");
	ImageIcon Exit = new ImageIcon(BILDER_PFAD+"Exit.png");
	ImageIcon KH1 = new ImageIcon(BILDER_PFAD+"Battle hintergrund.png");
	ImageIcon Monster1 = new ImageIcon(BILDER_PFAD+"Monster 1.png");
	
	int Dia_rand_X_1 = (int) (50*Math.random()+25);
	int Dia_rand_Y_1 = (int) (80*Math.random()+10);
	
	int Dia_rand_X_2 = (int) (50*Math.random()+25);
	int Dia_rand_Y_2 = (int) (80*Math.random()+10);
	
	int Dia_rand_X_3 = (int) (50*Math.random()+25);
	int Dia_rand_Y_3 = (int) (80*Math.random()+10);
	
	int Diamant_price = 20;
	int Dias_zahl = 1;

	Timer timer;
	
	private JPanel contentPane;

	/**
	 * Launch the application.
	 */
	public static void main(String[] args) {
		EventQueue.invokeLater(new Runnable() {
			public void run() {
				try {
					Idle frame = new Idle();
					frame.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
	}

	/**
	 * Create the frame.
	 */
	public Idle() {
		setAlwaysOnTop(true);
		setTitle("Game");
		setResizable(false);
		Toolkit tk = Toolkit.getDefaultToolkit();  
		int xSize = ((int) tk.getScreenSize().getWidth());  
		int ySize = ((int) tk.getScreenSize().getHeight()) -40;  
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(0, 0, xSize, ySize);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		contentPane.setLayout(null);
		getContentPane().setBackground(Color.BLACK);
		//setUndecorated(true);                                                         // Leisten weg?
		
		
		
		
		JLabel Diamant_Anzeige_1 = new JLabel("Deafault Text");
		Diamant_Anzeige_1.setForeground(Color.WHITE);
		Diamant_Anzeige_1.setBounds((85*(xSize/100)), (5*(ySize/100)), (15*(xSize/100)), 14);
		contentPane.add(Diamant_Anzeige_1);
		Diamant_Anzeige_1.setText("Diamanten: "+Diamanten);
		
		JLabel Diamant_1 = new JLabel(Diamant_Bild_1);
		Diamant_1.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseEntered(MouseEvent arg0) {
				System.out.println("Diamant_1 gefunden!");
				
				
				
				 Dia_rand_X_1 = (int) (50*Math.random()+25);
				 Dia_rand_Y_1 = (int) (80*Math.random()+10);
				 Diamanten_fake = Diamanten_fake + Diamanten_fake_plus;
				 Diamanten = (double) Diamanten_fake/10;
				 Diamant_Anzeige_1.setText("Diamanten: "+Diamanten);
				 Diamant_1.setBounds((Dia_rand_X_1*(xSize/100)), (Dia_rand_Y_1*(ySize/100)), 30, 30);
			}
		});
		
		JLabel PerTouch_Anzeige = new JLabel("Diamanten per Touch: "+(double)Diamanten_fake_plus/10);
		PerTouch_Anzeige.setForeground(Color.WHITE);
		PerTouch_Anzeige.setBounds((85*(xSize/100)), (7*(ySize/100)), (15*(xSize/100)), 14);
		contentPane.add(PerTouch_Anzeige);
		Diamant_1.setBounds((Dia_rand_X_1*(xSize/100)), (Dia_rand_Y_1*(ySize/100)), 30, 30);
		contentPane.add(Diamant_1);
		
		JLabel Diamant_2 = new JLabel(Diamant_Bild_1);
		Diamant_2.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseEntered(MouseEvent e) {
				System.out.println("Diamant_2 gefunden!");
				
				Dia_rand_X_2 = (int) (50*Math.random()+25);
				Dia_rand_Y_2 = (int) (80*Math.random()+10);
				Diamanten_fake = Diamanten_fake + Diamanten_fake_plus + Diamanten_fake_plus;
				Diamanten = (double) Diamanten_fake/10;
				Diamant_Anzeige_1.setText("Diamanten: "+Diamanten);
				Diamant_2.setBounds((Dia_rand_X_2*(xSize/100)), (Dia_rand_Y_2*(ySize/100)), 30, 30);
			}
		});
		Diamant_2.setBounds((Dia_rand_X_2*(xSize/100)), (Dia_rand_Y_2*(ySize/100)), 30, 30);
		contentPane.add(Diamant_2);
		Diamant_2.setVisible(false);
		
		JLabel Diamant_3 = new JLabel(Diamant_Bild_1);
		Diamant_3.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseEntered(MouseEvent e) {
				System.out.println("Diamant_3 gefunden!");
				
				Dia_rand_X_3 = (int) (50*Math.random()+25);
				Dia_rand_Y_3 = (int) (80*Math.random()+10);
				Diamanten_fake = Diamanten_fake + Diamanten_fake_plus + Diamanten_fake_plus + Diamanten_fake_plus;
				Diamanten = (double) Diamanten_fake/10;
				Diamant_Anzeige_1.setText("Diamanten: "+Diamanten);
				Diamant_3.setBounds((Dia_rand_X_3*(xSize/100)), (Dia_rand_Y_3*(ySize/100)), 30, 30);
			}
		});
		Diamant_3.setBounds((Dia_rand_X_3*(xSize/100)), (Dia_rand_Y_3*(ySize/100)), 30, 30);
		contentPane.add(Diamant_3);
		Diamant_3.setVisible(false);
		
		JLabel Mehr_Arbeiter_Upgrade = new JLabel("Mehr Arbeiter! Kosten: "+Diamanten_PerTouch_Upgrade_1_price_int);
		Mehr_Arbeiter_Upgrade.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent arg0) {
				
				System.out.println("Diamanten_PerTouch_Upgrade_1");
				
				if(Diamanten >= Diamanten_PerTouch_Upgrade_1_price_int){
					System.out.println("Diamanten_PerTouch_Upgrade_1 Success!");
					Diamanten_fake_plus++;
					Diamanten_fake = Diamanten_fake - Diamanten_PerTouch_Upgrade_1_price_int*10;
					Diamanten = (double) Diamanten_fake/10;
					Diamanten_PerTouch_Upgrade_1_price = Diamanten_PerTouch_Upgrade_1_price * 1.5;
					Diamanten_PerTouch_Upgrade_1_price_int = (int) Diamanten_PerTouch_Upgrade_1_price;
					Diamant_Anzeige_1.setText("Diamanten: "+Diamanten);
					Mehr_Arbeiter_Upgrade.setText("Mehr Arbeiter! Kosten: "+Diamanten_PerTouch_Upgrade_1_price_int);
					PerTouch_Anzeige.setText("Diamanten per Touch: "+(double)Diamanten_fake_plus/10);
					
				}
				
			}
		});
		Mehr_Arbeiter_Upgrade.setHorizontalAlignment(SwingConstants.LEFT);
		Mehr_Arbeiter_Upgrade.setForeground(Color.WHITE);
		
		
		Mehr_Arbeiter_Upgrade.setBackground(new Color(0,0,0,0));
		Mehr_Arbeiter_Upgrade.setBorder(null);
		
		JLabel Exit_Button = new JLabel(Exit);
		Exit_Button.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				System.out.println("");
				System.out.println("");
				System.out.println("--------------------------------------------------");
				System.out.println("| Spiel Beendet mit Exit button. Keine Fehler!   |");
				System.out.println("--------------------------------------------------");
				System.exit( 0 );
			}
		});
		Exit_Button.setBounds(xSize-30, 0, 30, 30);
		contentPane.add(Exit_Button);
		Mehr_Arbeiter_Upgrade.setBounds((85*(xSize/100)), (20*(ySize/100)), (15*(xSize/100)), 23);
		contentPane.add(Mehr_Arbeiter_Upgrade);
		
		JLabel Mehr_Dias = new JLabel("Mehr Diamanten? Kosten: "+Diamant_price);
		Mehr_Dias.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				if(Diamanten >= Diamant_price){
					if (Dias_zahl == 2){
						Diamant_3.setVisible(true);
						Dias_zahl++;
						Diamant_price = 100;
						Mehr_Dias.setText("Mehr Diamanten? Kosten: "+Diamant_price);
						System.out.println("Jetzt 3 Diamanten im Spiel");
						Mehr_Dias.setVisible(false);
												
					}	
					
					if (Dias_zahl == 1){
						Diamant_2.setVisible(true);
						Dias_zahl++;
						Diamant_price = 50;
						System.out.println("Jetzt 2 Diamanten im Spiel");
						Mehr_Dias.setText("Mehr Diamanten? Kosten: "+Diamant_price);
						
						
						
					}
				
				}
			}
		});
		Mehr_Dias.setForeground(Color.WHITE);
		Mehr_Dias.setBounds((85*(xSize/100)), (22*(ySize/100)), (15*(xSize/100)), 23);
		contentPane.add(Mehr_Dias);
		
		JLabel Hintergrund_1 = new JLabel(Hintergrund);
		Hintergrund_1.addMouseMotionListener(new MouseMotionAdapter() {
			@Override
			public void mouseMoved(MouseEvent e) {
				Diamant_Anzeige_1.setText("Diamanten: "+Diamanten);
			}
		});
		
		JLabel Auto_mine = new JLabel("Automatisch graben!  Preis: "+Diamanten_PerSek_Upgrade_1_price_int);
		Auto_mine.addMouseListener(new MouseAdapter() {
			@Override
			public void mouseClicked(MouseEvent e) {
				
				
				if (Diamanten_fake_plus_PerSek == 0){
					
					int count = (int) (1);
					TimeClass tc = new TimeClass(count);
					timer = new Timer(1000, tc);
					timer.start();
					
				}
				
				
				if (Diamanten >= Diamanten_PerSek_Upgrade_1_price_int){
					
					Diamanten_fake_plus_PerSek++;
					
					Diamanten_fake = Diamanten_fake - 10*Diamanten_PerSek_Upgrade_1_price_int;
					
					Diamanten_PerSek_Upgrade_1_price = Diamanten_PerSek_Upgrade_1_price*1.1;
					
					Diamanten_PerSek_Upgrade_1_price_int = (int) Diamanten_PerSek_Upgrade_1_price;
					
					Auto_mine.setText("Automatisch graben!  Preis: "+Diamanten_PerSek_Upgrade_1_price_int);
					
				}
			}
		});
		Auto_mine.setBounds((85*(xSize/100)), (24*(ySize/100)), (15*(xSize/100)), 23);
		Auto_mine.setForeground(Color.WHITE);
		contentPane.add(Auto_mine);
		
		
		Hintergrund_1.setBounds((25*(xSize/100)), (10*(ySize/100)), (50*(xSize/100))+30, (80*(ySize/100))+30);
		contentPane.add(Hintergrund_1);
		
		JLabel Atak_button = new JLabel("Atakke! (Kostet 1 Diamant)");
		Atak_button.setBackground(Color.RED);
		Atak_button.setForeground(Color.BLACK);
		Atak_button.setHorizontalAlignment(SwingConstants.CENTER);
		Atak_button.setFont(new Font("Tahoma", Font.BOLD, 18));
		Atak_button.setBounds((5*(xSize/100)), (95*(ySize/100)), 250, 15);
		contentPane.add(Atak_button);
		
		JLabel Hintergrung_Atakke_1 = new JLabel(Hintergrund);
		Hintergrung_Atakke_1.setBounds((5*(xSize/100)), (int)(94.8*(ySize/100)), 250, 20);
		contentPane.add(Hintergrung_Atakke_1);
		
		JLabel Monster_1 = new JLabel(Monster1);
		Monster_1.setBounds((5*(xSize/100)), (20*(ySize/100)), 250, 250);
		contentPane.add(Monster_1);
		
		JLabel kampf_Hintergrund_1 = new JLabel(KH1);
		kampf_Hintergrund_1.setBounds((int)(2.5*(xSize/100)), (10*(ySize/100)), (20*(xSize/100)), (80*(ySize/100))+30);
		contentPane.add(kampf_Hintergrund_1);
		
		Graphics g = null;
		
		g.setColor(Color.RED);
		g.fillRect((int)(2.5*(xSize/100)), (10*(ySize/100)), (20*(xSize/100)), (80*(ySize/100))+30);
 
		g.setColor(Color.BLACK);
		g.drawRect((int)(2.5*(xSize/100)), (10*(ySize/100)), (20*(xSize/100)), (80*(ySize/100))+30);
		
		
		
		
		
		
	}
	
	
	
	
	
public class TimeClass implements ActionListener{
		
		
		
		public TimeClass(int counter){
			
			
			
		}
		
		public void actionPerformed(ActionEvent tc) {
			
			System.out.println("Dia plus: "+(double)Diamanten_fake_plus_PerSek/10);
			Diamanten_fake = Diamanten_fake + Diamanten_fake_plus_PerSek;
			Diamanten = (double) Diamanten_fake/10;
			
			
		}
		
	}
}


Danke für eure Bemühungen :)
Unbenannt.jpg
Unbenannt.png

Das sind die Bilder
1. Wie mein Programm zur Zeit aussieht.
(Rechtecke sollen links und rechts neben das "Monster")
2. Farbverlauf
 

njans

Top Contributor
Und du solltest dir Java Konventionen angewöhnen.
Variablen haben keine Unterstriche, fangen klein an und sind in camelCase geschrieben: Dia_rand_X_1 -> diaRandX1
Klassennamen sollten Nomen sein, die klar beschreiben worum es sich bei der Klasse handelt. "Idle" zum Beispiel sagt gar nichts aus.
 

franky27

Bekanntes Mitglied
Ohne den Code jetzt durchgegangen zu sein würde ich sagen du musst dir das Graphics Object von der Componente auf der du zeichnen willst erst holen mit component.getGraphics();
 

franky27

Bekanntes Mitglied
Ich habe keine Ahnung was genau du machen möchtest (Farbverlauf aus Datei nehmen..). Wenn du einen bestimmten Farbverlauf zeichnen möchtest, kannst du das mit Java2D tun. Das Graphics Object dazu in Graphics2D casten
Code:
Graphics2D g2 = (Graphics2D)g
. Dann kannst du ein GradientPaint Objekt erzeugen, dem du im Konstruktor zwei Koordinaten + 2 Farben für die Punkte mitlieferst.
Code:
GradientPaint(float x1, float y1, Color col1, float x2, float y2, Color col2)
. Dann bekommst du einen Farbverlauf zwischen diesen Punkten/Farben und kannst das schliesslich mit
Code:
g2.setPaint(GradientObjekt)
als deine Zeichenfarbe setzen.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
G JTextArea - farbige Schrift Java Basics - Anfänger-Themen 5
G Farbige / unterstrichene Ausgaben auf der Konsole! Java Basics - Anfänger-Themen 2
B farbige Ausgabe Java Basics - Anfänger-Themen 13
U Konsole / Farbige Schrift? Java Basics - Anfänger-Themen 3
S Farbige Ausgabe in der Standardausgabe Java Basics - Anfänger-Themen 7
M HILFE JPanel - Graphics Java Basics - Anfänger-Themen 1
H Eingabe tätigen bevor Graphics g Fenster öffnet Java Basics - Anfänger-Themen 5
I Java Klassen "Graphics" und "MouseEvent" kombinieren Java Basics - Anfänger-Themen 7
CptK Interface Bilder mit Graphics g zeichnen Java Basics - Anfänger-Themen 7
J Erste Schritte drawLine Methode der Graphics Klasse Java Basics - Anfänger-Themen 2
J GUI / Graphics Java Basics - Anfänger-Themen 2
H Graphics / repaint Java Basics - Anfänger-Themen 8
K Zwei Fragen zu Graphics/Graphics2D Java Basics - Anfänger-Themen 5
R Cast java.awt.Graphics Java Basics - Anfänger-Themen 7
Azazel (Anfängerhilfe) awt.Graphics Schwierigkeiten Java Basics - Anfänger-Themen 6
I Methoden public void paintComponent (Graphics g) Java Basics - Anfänger-Themen 4
B Erste Schritte Anzeige von Graphics Objekten einzeln aktualisieren Java Basics - Anfänger-Themen 1
S Ein Graphics Obejct mehrmals mit denselben Eigenschaften zeichnen lassen?!?!? Java Basics - Anfänger-Themen 4
S G Graphics Java Basics - Anfänger-Themen 1
thet1983 g.Graphics löschen? Java Basics - Anfänger-Themen 1
M Probleme mit paint() aus java.awt.Graphics Java Basics - Anfänger-Themen 2
A EAN13 Font auf graphics g erzeugt Monospaces Java Basics - Anfänger-Themen 14
N Graphics to png Java Basics - Anfänger-Themen 10
N Methode draw(Graphics g) aufrufen Java Basics - Anfänger-Themen 6
Dogge Problem mit paint(Graphics g) im Applet Java Basics - Anfänger-Themen 13
J Problem mit paint(Graphics g) Java Basics - Anfänger-Themen 4
J Jtable änderung soll graphics aktualisieren Java Basics - Anfänger-Themen 4
J JAVA Graphics Java Basics - Anfänger-Themen 5
A Graphics Objekt verhält sich merkwürdig Java Basics - Anfänger-Themen 2
G DRUCKEN von z.B. eines JFrame über print(Graphics g) Java Basics - Anfänger-Themen 9
Maxim6394 Probleme mit Graphics Java Basics - Anfänger-Themen 7
W von Graphics in BufferedImage Java Basics - Anfänger-Themen 10
M OOP Graphics immer selbstbezihend Java Basics - Anfänger-Themen 12
K Problem mit Parameter von paint(Graphics g) Java Basics - Anfänger-Themen 3
T Transparente Bilder mit Graphics zeichnen Java Basics - Anfänger-Themen 17
H Probleme mit Graphics G Java Basics - Anfänger-Themen 2
M Schiebepuzzle: MouseListener und Graphics? Java Basics - Anfänger-Themen 6
J Graphics g Java Basics - Anfänger-Themen 4
H Probleme mit Graphics Java Basics - Anfänger-Themen 5
B MouseListener & Graphics Java Basics - Anfänger-Themen 10
M Graphics zeichnen Java Basics - Anfänger-Themen 2
F Graphics PDFBox Java Basics - Anfänger-Themen 9
M kurze Frage zu Graphics Java Basics - Anfänger-Themen 5
Luk10 Buch für Swing/Awt/Graphics Java Basics - Anfänger-Themen 4
M Java Graphics etc. Java Basics - Anfänger-Themen 2
M Concurrency und Graphics Java Basics - Anfänger-Themen 9
F Was ist Graphics g wirklich? Java Basics - Anfänger-Themen 5
J Klasse Graphics Nullpointerexception Java Basics - Anfänger-Themen 8
P Frage zu Graphics Java Basics - Anfänger-Themen 2
O graphics methode zeigt mein bild nicht an Java Basics - Anfänger-Themen 7
F Zweite Graphics-Methode wird nicht ausgeführt Java Basics - Anfänger-Themen 4
T rotes herz public void paint(Graphics g) Java Basics - Anfänger-Themen 2
G paintComponent(Graphics g) Java Basics - Anfänger-Themen 2
eQui Oberfläche mit Graphics zeichnen Java Basics - Anfänger-Themen 11
S Dicke bei Graphics Ovject einstellen Java Basics - Anfänger-Themen 2
V KSKB zum Verständnis von Graphics und paintComponent Java Basics - Anfänger-Themen 6
G mit Graphics erzeugte Strings verschwinden sofort wieder Java Basics - Anfänger-Themen 7
T Graphics von java.awt.Frame soll sich inhalt merken Java Basics - Anfänger-Themen 3
G Graphics-Object skalieren Java Basics - Anfänger-Themen 9
G Constructor & Graphics g Java Basics - Anfänger-Themen 5
F Frage zum Graphics Objekt Java Basics - Anfänger-Themen 3
D Instanz von Graphics in run() Java Basics - Anfänger-Themen 8
B Mouseevents und Graphics Java Basics - Anfänger-Themen 11
D Abstrakte Klasse Graphics Java Basics - Anfänger-Themen 3
W Verständisfrage zu Graphics Objekt Java Basics - Anfänger-Themen 3
P umwandeln von graphics nach image Java Basics - Anfänger-Themen 4
A Graphics g, AdjustmentEvent e Java Basics - Anfänger-Themen 5
Dilandau paint(Graphics g) { unbekannt in try{} / catch{} }? Java Basics - Anfänger-Themen 5
S Graphics Java Basics - Anfänger-Themen 11

Ähnliche Java Themen

Neue Themen


Oben