Code:
import javax.swing.*; // Java-Swing importieren
import java.awt.*; // Java-AWT importieren
// Programm für das Haus vom Nikolaus in
// 1. Blockaufbau und
// 2. im konventionellen Einzelstrichaufbau ...
public class Haus_vom_Nikolaus // Klasse für das Haus des Nikolaus
{
public static void main(String[] args) // Hauptmethode
{
// Attribute für beide Häuser definieren
int text_höhe = 10; // Höhe des Textes
int text_x_position = 15; // X-Position des Textes
int text_y_position = 15 + text_höhe; // Y-Position des Textes
int anfang_x_position = 150; // X-Position des Fensterzentrums
int anfang_y_position = 200; // Y-Position des Fensterzentrums
int haus_breite = 100; // Breite des Hauses
int haus_höhe = 100; // Höhe des Hauses
int dach_höhe = haus_höhe / 2; // Höhe des Daches
int x_position = 0; // X-Positions-Attribut auf 0 setzen
int y_position = 0; // Y-Positions-Attribut auf 0 setzen
// 1. Haus
JFrame haus1; // Objekt haus1 definieren
haus1 = new JFrame("Das Haus vom Nikolaus 1 ..."); // mit dem Titel
haus1.setSize(300 , 300); // Größe von haus1 definieren
haus1.setLocation(20 , 20); // Lage des Objekts definieren
haus1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Schließen, wenn Button gedrückt
haus1.getContentPane().setBackground(Color.GREEN); // Hintergrundfarbe bearbeiten
haus1.setVisible(true); // Objekt aktivieren
warten(); // auf das 1. Haus warten
warten();
warten();
warten();
warten();
haus1.getContentPane().getGraphics().drawString("Haus vom Nikolaus 1" , text_x_position , text_y_position);
haus1.getContentPane().getGraphics().drawRect((anfang_x_position - haus_breite / 2) , (anfang_y_position - haus_höhe / 2) , (haus_breite) , (haus_höhe));
warten();
haus1.getContentPane().getGraphics().drawLine((anfang_x_position - haus_breite / 2) , (anfang_y_position - haus_höhe / 2) , (anfang_x_position) , (anfang_y_position - haus_höhe / 2 - (haus_höhe / 2)));
haus1.getContentPane().getGraphics().drawLine((anfang_x_position + haus_breite / 2) , (anfang_y_position - haus_höhe / 2) , (anfang_x_position) , (anfang_y_position - haus_höhe / 2 - (haus_höhe / 2)));
warten();
haus1.getContentPane().getGraphics().drawLine((anfang_x_position - haus_breite / 2) , (anfang_y_position - haus_höhe / 2) , (anfang_x_position + haus_breite / 2) , (anfang_y_position + haus_höhe / 2));
haus1.getContentPane().getGraphics().drawLine((anfang_x_position + haus_breite / 2) , (anfang_y_position - haus_höhe / 2) , (anfang_x_position - haus_breite / 2) , (anfang_y_position + haus_höhe / 2));
warten();
// 2. Haus
JFrame haus2; // Objekt haus2 definieren
haus2 = new JFrame("Das Haus vom Nikolaus 2 ..."); // mit dem Titel
haus2.setSize(300 , 300); // Größe von haus2 definieren
haus2.setLocation(360 , 20); // Lage des Objekts definieren
haus2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // Schließen, wenn Button gedrückt
haus2.getContentPane().setBackground(Color.BLUE); // Hintergrundfarbe bearbeiten
haus2.setVisible(true); // Objekt aktivieren
warten(); // auf das 2. Haus warten
warten();
warten();
warten();
warten();
haus2.getContentPane().getGraphics().drawString("Haus vom Nikolaus 2" , text_x_position , text_y_position);
x_position = anfang_x_position + haus_breite / 2;
y_position = anfang_y_position + haus_höhe / 2;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position - haus_breite , y_position - haus_höhe);
warten();
x_position = x_position - haus_breite;
y_position = y_position - haus_höhe;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position + haus_breite , y_position);
warten();
x_position = x_position + haus_breite;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position - haus_breite / 2 , y_position - (haus_höhe / 2));
warten();
x_position = x_position - haus_breite / 2;
y_position = y_position - haus_höhe;
haus2.getContentPane().getGraphics().drawLine(x_position , (y_position * 2) , x_position - haus_breite / 2 , y_position + haus_höhe );
warten();
x_position = x_position - haus_breite / 2;
y_position = y_position + haus_höhe;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position , y_position + haus_höhe);
warten();
x_position = x_position;
y_position = y_position + haus_höhe;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position + haus_breite , y_position);
warten();
x_position = x_position + haus_breite;
y_position = y_position;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position , y_position - haus_höhe);
warten();
x_position = x_position;
y_position = y_position - haus_höhe;
haus2.getContentPane().getGraphics().drawLine(x_position , y_position , x_position - haus_breite , y_position + haus_höhe);
warten();
}
private static void warten() // 50.000.000 Takte warten
{
int warten_max = 50000000; // Wartezeit
int warten_zaehler = 0; // Zähler für die Warteschleife
while(warten_zaehler < warten_max)
{
warten_zaehler++;
}
}
}
Nicht gerade spannend, aber seht selbst! *g*
Lesezeichen