Texturenauswahl GUI funktionsfähig

This commit is contained in:
Sebastian Kacza
2021-01-08 16:14:22 +01:00
parent 5df8b07b35
commit f61033bec6

View File

@@ -2,7 +2,11 @@ package de.jaujau.gui;
import java.awt.BorderLayout; import java.awt.BorderLayout;
import java.awt.Font; import java.awt.Font;
import java.awt.Image;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.ImageIcon;
import javax.swing.JButton; import javax.swing.JButton;
import javax.swing.JFrame; import javax.swing.JFrame;
import javax.swing.JLabel; import javax.swing.JLabel;
@@ -23,15 +27,16 @@ public class texturenauswaehlen_GUI extends JFrame{
private JPanel contentPane; private JPanel contentPane;
private Texturenpakete pakete; private Texturenpakete pakete;
private JComboBox comboBox; private JComboBox comboBox;
private JLabel vorschaubild;
private JButton ok, hinzufuegen, entfernen; private JButton speichern, hinzufuegen, schliessen;
public texturenauswaehlen_GUI (Texturenpakete texturenpakete) { public texturenauswaehlen_GUI (Texturenpakete texturenpakete) {
pakete = texturenpakete; pakete = texturenpakete;
erstelleFenster(); erstelleFenster();
aktualisiereInhalt();
} }
private void erstelleFenster() { private void erstelleFenster() {
//Fenster größen fetslegen //Fenster größen fetslegen
setAlwaysOnTop(true); setAlwaysOnTop(true);
@@ -40,6 +45,12 @@ public class texturenauswaehlen_GUI extends JFrame{
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane); setContentPane(contentPane);
contentPane.setLayout(null); contentPane.setLayout(null);
setResizable(false);
//Vorschaubild
vorschaubild = new JLabel();
vorschaubild.setBounds(50, 50, 562, 500);
contentPane.add(vorschaubild);
//Text "Texturenauswahl" //Text "Texturenauswahl"
JLabel lblNewLabel = new JLabel("Texturenauswahl"); JLabel lblNewLabel = new JLabel("Texturenauswahl");
@@ -54,23 +65,27 @@ public class texturenauswaehlen_GUI extends JFrame{
hinzufuegen.addActionListener(e-> paketHinzufuegeb()); hinzufuegen.addActionListener(e-> paketHinzufuegeb());
contentPane.add(hinzufuegen); contentPane.add(hinzufuegen);
//Teste Entfernen
entfernen = new JButton("Entfernen");
entfernen.setBounds(291, 129, 140, 25);
entfernen.addActionListener(e-> paketEntfernen());
contentPane.add(entfernen);
//Teste OK //Teste Speichern
ok = new JButton("Speicher"); speichern = new JButton("Speicher");
ok.setBounds(358, 239, 73, 23); speichern.setBounds(358, 239, 73, 23);
ok.addActionListener(e-> speichern()); speichern.addActionListener(e-> speichern());
contentPane.add(ok); contentPane.add(speichern);
//Teste Schießen
schliessen = new JButton("Schließen");
schliessen.setBounds(378, 209, 73, 23);
schliessen.addActionListener(e-> schliessen());
contentPane.add(schliessen);
//Auswahl Box
comboBox = new JComboBox(); comboBox = new JComboBox();
comboBox.setBounds(144, 73, 287, 25); comboBox.setBounds(144, 73, 287, 25);
contentPane.add(comboBox); contentPane.add(comboBox);
aktualisiereBox(); aktualisiereInhalt();
} }
private void paketHinzufuegeb() { private void paketHinzufuegeb() {
@@ -83,28 +98,35 @@ public class texturenauswaehlen_GUI extends JFrame{
// Abfrage, ob auf "Öffnen" geklickt wurde // Abfrage, ob auf "Öffnen" geklickt wurde
if(chooseroption == JFileChooser.APPROVE_OPTION) if(chooseroption == JFileChooser.APPROVE_OPTION)
{ {
//data.loadInputtext(chooser.getSelectedFile());
//refresh_textbox();
pakete.addPaket(chooser.getSelectedFile().toString()); pakete.addPaket(chooser.getSelectedFile().toString());
aktualisiereBox(); aktualisiereInhalt();
} }
} }
private void paketEntfernen() {
} private void schliessen() {
private void speichern() {
pakete.setAktivesPaket(comboBox.getSelectedIndex());
this.setVisible(false); this.setVisible(false);
} }
private void aktualisiereBox() {
private void speichern() {
pakete.setAktivesPaket(comboBox.getSelectedIndex());
aktualisiereBild();
}
private void aktualisiereInhalt() {
comboBox.removeAllItems(); comboBox.removeAllItems();
for(int i = 0; i < pakete.getAnzahlPakete(); i++) { for(int i = 0; i < pakete.getAnzahlPakete(); i++) {
comboBox.addItem(pakete.getName(i)); comboBox.addItem(pakete.getName(i));
} }
comboBox.setSelectedIndex(pakete.getAktivesPaket()); comboBox.setSelectedIndex(pakete.getAktivesPaket());
aktualisiereBild();
}
private void aktualisiereBild() {
vorschaubild.setIcon(new ImageIcon(pakete.getTextur(32).getScaledInstance(150, 210, Image.SCALE_SMOOTH)));
} }
} }