GUI
parent
33add58332
commit
976788b0a3
|
@ -0,0 +1,40 @@
|
||||||
|
package GUIAnwendungen;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
|
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
|
||||||
|
public class Jframe {
|
||||||
|
|
||||||
|
/*
|
||||||
|
* - mit der Klasse(JFrame) erzeugen wir ein Fenster
|
||||||
|
*/
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
// Erstelle ein Fenster
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
|
||||||
|
//setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
//setSize(width, height)
|
||||||
|
frame.setSize(420, 500);
|
||||||
|
|
||||||
|
// setzte einen Überschrift für mein Fenster
|
||||||
|
frame.setTitle("Mein erstes Fenster");
|
||||||
|
|
||||||
|
// Schließe das Fenster richtig zu
|
||||||
|
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
// Mein Fenster kann ab jetzt nicht mehr vergößert oder verkleinert werden
|
||||||
|
frame.setResizable(false);
|
||||||
|
|
||||||
|
//gib das Fenster eine Farbe
|
||||||
|
frame.getContentPane().setBackground(Color.green);
|
||||||
|
//oder rgb Farbe
|
||||||
|
frame.getContentPane().setBackground(new Color(0,0,100));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,41 @@
|
||||||
|
package GUIAnwendungen;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Font;
|
||||||
|
|
||||||
|
import javax.swing.BorderFactory;
|
||||||
|
import javax.swing.ImageIcon;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.border.Border;
|
||||||
|
|
||||||
|
// mit Jpanel kann man alle grafischen Bauelemente einsetzen
|
||||||
|
public class Jpanel {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
JPanel panel = new JPanel();
|
||||||
|
panel.setBackground(Color.red);
|
||||||
|
// setze eine Grafisches Bauelement (int x, int y, int width, int height)
|
||||||
|
panel.setBounds(0, 0, 240, 250);
|
||||||
|
|
||||||
|
// Erstelle ein Fenster
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
|
||||||
|
//stellt sicher, dass keine automatische Positionierung und Größenanpassung erhalten
|
||||||
|
frame.setLayout(null);
|
||||||
|
|
||||||
|
// setSize(width, height)
|
||||||
|
frame.setSize(750, 750);
|
||||||
|
|
||||||
|
// setzte einen Überschrift für mein Fenster
|
||||||
|
frame.setTitle("Mein erstes Fenster");
|
||||||
|
|
||||||
|
//setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
frame.add(panel);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,83 @@
|
||||||
|
package GUIAnwendungen;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Font;
|
||||||
|
|
||||||
|
import javax.swing.BorderFactory;
|
||||||
|
import javax.swing.ImageIcon;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.border.Border;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* JLabel = ist ein GUI Anzeiger für hinzufügen von Texten und Bildern
|
||||||
|
*/
|
||||||
|
|
||||||
|
public class Labels {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
// Erstelle eine Label
|
||||||
|
JLabel label = new JLabel();
|
||||||
|
|
||||||
|
// Erstelle einen Border für das Fenster
|
||||||
|
Border b1 = BorderFactory.createLineBorder(Color.GREEN,5);
|
||||||
|
|
||||||
|
// füge den Text auf dem Fenster hinzu
|
||||||
|
label.setText("Hall Welt");
|
||||||
|
|
||||||
|
/*
|
||||||
|
* - Mit diesen zwei Methode positioniere ich den Text auf dem Bild
|
||||||
|
* 1. setHorizontalTextPosition(JLabel.CENTER); set Text LEFT,CENTER,RIGHT auf dem Bild
|
||||||
|
* 2. label.setVerticalTextPosition(JLabel.TOP);set Text TOP,CENTER, DOWN auf dem Bild
|
||||||
|
* - man kann auch integer Werte eingeben
|
||||||
|
*/
|
||||||
|
label.setHorizontalTextPosition(JLabel.CENTER); // Horozional
|
||||||
|
label.setVerticalTextPosition(JLabel.TOP); // vertikal
|
||||||
|
|
||||||
|
// gib für den Schrifft eine Farbe aus der Klasse Color ein
|
||||||
|
// entweder:
|
||||||
|
label.setForeground(Color.GREEN);
|
||||||
|
// oder:
|
||||||
|
label.setForeground(new Color(0,0,100));
|
||||||
|
|
||||||
|
//gib Schriftart aus der Klasse Font ein
|
||||||
|
label.setFont(new Font("MV Boli",Font.PLAIN,20));
|
||||||
|
|
||||||
|
// verschiebe den Text nach beliebg Position
|
||||||
|
label.setIconTextGap(20);
|
||||||
|
|
||||||
|
// setze eine Farbe für Background
|
||||||
|
label.setBackground(Color.black);
|
||||||
|
label.setOpaque(true);
|
||||||
|
|
||||||
|
//zeige den Border auf dem Fenster
|
||||||
|
label.setBorder(b1);
|
||||||
|
|
||||||
|
|
||||||
|
//füge ein Bild hinzu
|
||||||
|
ImageIcon image = new ImageIcon("C:\\Users\\obaya\\eclipse-workspace\\OOP\\src\\GUIAnwendungen\\Test.jpg");
|
||||||
|
label.setIcon(image);
|
||||||
|
|
||||||
|
|
||||||
|
// Erstelle ein Fenster
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
// setSize(width, height)
|
||||||
|
frame.setSize(500, 500);
|
||||||
|
|
||||||
|
// setzte einen Überschrift für mein Fenster
|
||||||
|
frame.setTitle("Mein erstes Fenster");
|
||||||
|
|
||||||
|
//setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
|
||||||
|
frame.setVisible(true);
|
||||||
|
|
||||||
|
// zeige den Text auf dem Fenster
|
||||||
|
frame.add(label);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
package GUIAnwendungen;
|
||||||
|
|
||||||
|
public class Test {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
System.out.println("Hallo Welt!");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
|
@ -0,0 +1,92 @@
|
||||||
|
package GUIAnwendungen;
|
||||||
|
import java.awt.Color;
|
||||||
|
import java.awt.Font;
|
||||||
|
|
||||||
|
import javax.swing.BorderFactory;
|
||||||
|
import javax.swing.ImageIcon;
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
import javax.swing.border.Border;
|
||||||
|
import javax.swing.*;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
|
/*
|
||||||
|
* - ActionListener ist ein Interface Klasse,
|
||||||
|
* die nur eine abstrakte Methode hat, die mit drücken auf Button reagiert
|
||||||
|
*
|
||||||
|
* Also Das Kochrezept:
|
||||||
|
* 1. Button erstellen: JButton button = new JButton("Text");
|
||||||
|
* 2. ActionListener implementieren: Implementiere ActionListener, um die Funktionalität zu definieren.
|
||||||
|
* 3. ActionListener zum Button hinzufügen:
|
||||||
|
* 3.1 button.addActionListener(new ActionListener() { ... });
|
||||||
|
* 3.2 oder mit separater Methode: button.addActionListener(e -> deineMethode());
|
||||||
|
*/
|
||||||
|
public class jbutton implements ActionListener {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
//1.
|
||||||
|
JButton button = new JButton();
|
||||||
|
button.setBounds(200,100,100,50);
|
||||||
|
button.setText("Click me");
|
||||||
|
button.addActionListener(null);
|
||||||
|
|
||||||
|
// 2. Hinzufügen des ActionListeners zum Button
|
||||||
|
JLabel label = new JLabel();
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Position und Größe des Labels eingeben warum?
|
||||||
|
* weil ich frame.setLayout(null); aktiviert habe
|
||||||
|
*/
|
||||||
|
label.setBounds(150, 50, 100, 50);
|
||||||
|
/*
|
||||||
|
* new ActionListener() ist nicht das Erzeugen einer Instanz des Interfaces selbst,
|
||||||
|
* sondern das Erstellen einer Instanz einer anonymen Klasse, die das ActionListener-Interface implementiert.
|
||||||
|
*/
|
||||||
|
button.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
// Dies ist die Aktion, die ausgeführt wird, wenn der Button geklickt wird
|
||||||
|
clicked(label);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Erstelle ein Fenster
|
||||||
|
JFrame frame = new JFrame();
|
||||||
|
|
||||||
|
//stellt sicher, dass keine automatische Positionierung und Größenanpassung erhalten
|
||||||
|
frame.setLayout(null);
|
||||||
|
|
||||||
|
// setSize(width, height)
|
||||||
|
frame.setSize(750, 750);
|
||||||
|
|
||||||
|
// setzte einen Überschrift für mein Fenster
|
||||||
|
frame.setTitle("Mein erstes Fenster");
|
||||||
|
|
||||||
|
//setVisible(boolean): gibt an, ob mein Fenster sichtbar ist oder nicht
|
||||||
|
frame.setVisible(true);
|
||||||
|
frame.add(label);
|
||||||
|
frame.add(button);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static void clicked(JLabel label) {
|
||||||
|
label.setText("Hall Welt");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -5,4 +5,5 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
module Programmierung2 {
|
module Programmierung2 {
|
||||||
|
requires java.desktop;
|
||||||
}
|
}
|
Loading…
Reference in New Issue