GUI in Java-Layout+Bilder

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hi Community,

unser Informatik-Kurs ist grad an einem Projekt, bei der ich die GUI entwickeln soll...
Allerdings habe ich noch 2 kleine Probleme...
Zum einen möchte ich eine Tabelle entwerfen wobei die ersten 7 Zeilen 2 Spalten und die 8. Zeile 1 Spalte enthält - welches Layout verwendet man am besten dafür? Und 2. wie kann man Bilder in Buttons einfügen? (soll ein kleines "Siedler-Spiel" werden) Hier ansonsten noch der bisherige Quelltext wobei das Layout halt noch nicht stimmt.

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

public class GUI-Projekt-Projekt extends JFrame {{

}
// Anfang Variablen
 private JTextField ausgabefeldJ, ausgabefeldK, ausgabefeldB, ausgabefeldF,
 ausgabefeldN, ausgabefeldBIG;
 private JButton buttonJaeger, buttonKrieger, buttonBauarbeiter, buttonSammeln,
 buttonFüürstelle, buttonJagd, buttonUma-Matimbahöhle, buttonKriech,
 buttonBamboocha-Höhle;
// Ende Variablen


public GUI-Projekt-Projekt(String title) {{

}
   super(title);
   setDefaultCloseOperation(EXIT_ON_CLOSE);
   setSize(800, 800);
   Container cp = getContentPane();
   cp.setLayout(new GridLayout(8,2,4,4));

   ausgabefeldJ = new JTextField("");
   cp.add (ausgabefeldJ);

   buttonJaeger = new JButton("Jaeger (ausbilden)");
   cp.add (buttonJaeger);
   buttonJaeger.addActionListener(this);

   ausgabefeldK = new JTextField("");
   cp.add (ausgabefeldK);

   buttonKrieger = new JButton("Krieger (ausbilden)");
   cp.add (buttonKrieger);
   buttonKrieger.addActionListener(this);

   ausgabefeldB = new JTextField("");
   cp.add (ausgabefeldB);

   buttonBauarbeiter = new JButton("Bauarbeiter(ausbilden)");
   cp.add (buttonBauarbeiter);
   buttonBauarbeiter.addActionListener(this);

   buttonSammeln = new JButton("Sammeln");
   cp.add (buttonSammeln);
   buttonSammeln.addActionListener(this);

   buttonFüürstelle = new JButton("Füürstelle");
   cp.add (buttonFüürstelle);
   buttonFüürstelle.addActionListener(this);

   buttonJagd = new JButton("Jachen");
   cp.add (buttonJagd);
   buttonJagd.addActionListener(this);

   buttonUma-Matimbahöhle = new JButton("Uma-Matimbahöhle");
   cp.add (buttonUma-Matimbahöhle);
   buttonUma-Matimbahöhle.addActionListener(this);

   buttonKriech = new JButton("Kriech");
   cp.add (buttonKriech);
   buttonKriech.addActionListener(this);

   buttonBamboocha-Höhle = new JButton("Bamboocha-Höhle");
   cp.add (buttonBamboocha-Höhle);
   buttonBamboocha-Höhle.addActionListener(this);

   ausgabefeldF = new JTextField("");
   cp.add (ausgabefeldF);

   ausgabefeldN = new JTextField("");
   cp.add (ausgabefeldN);

   ausgabefeldBIG = new JTextField("");
   cp.add (ausgabefeldBIG);


   setVisible(true);

 }}
 public static void main(String[] args) {
   new GUI-Projekt-Projekt("HOMO-Sapiens");
 }



Vielen Dank im voraus, lg, JFreezerR
 

anfänger15

Bekanntes Mitglied
Bilder inButtons einfügen:

button.setIcon(new ImageIcon("deinbild.jpg"));

und mit dem hier solltest du dann den Rand des Buttons weg bekommen(falls du das willst);

button.setBorder(new javax.swing.border.EmptyBorder(new java.awt.Insets(
1, 1, 1, 1)));
 
G

Guest

Gast
rand wegbekommen geht mit button.setBorderPainted(false);
ist doch wesentlich einfacher als das was du vorhattest ;)
 
G

Guest

Gast
*hochschiebundnochaufeinelösungfürslayoutwartundishcschonmalfüralleantwortenbedankt*
 

m@nu

Bekanntes Mitglied
statt dich ins GridBagLayout einzuarbeiten (welches ich gar nicht mag), empfehle ich dir das FormLayout von jgoodies.

:arrow: http://www.jgoodies.net/freeware/forms/index.html
(hier findest du auch ein ausführliches pdf mit beispielen)


da könntest du dein layout etwa so implementieren:
Code:
public class FormsExample extends JFrame implements ActionListener {
    
    private JTextField ausgabefeldJ;
    private JTextField ausgabefeldK;
    private JTextField ausgabefeldB;
    private JTextField ausgabefeldF;
    private JTextField ausgabefeldN;
    private JTextField ausgabefeldBIG;

    private JButton buttonJaeger;
    private JButton buttonKrieger;
    private JButton buttonBauarbeiter;
    private JButton buttonSammeln;
    private JButton buttonFüürstelle;
    private JButton buttonJagd;
    private JButton buttonUmaMatimbahöhle;
    private JButton buttonKriech;
    private JButton buttonBamboochaHöhle;


    public FormsExample() {
        /* Vorbereiten: */
        super("HOMO-Sapiens");
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        setSize(800, 800);
        
        Container cp = getContentPane();
        cp.setLayout(new FormLayout(
                "180px,180px",      // Spalten
                "p,p,p,p,p,p,p,p"   // Zeilen (p = prefered)
                ));
   
   
        /* Components erstellen & initialisieren: */
        ausgabefeldJ = new JTextField("");

        buttonJaeger = new JButton("Jaeger (ausbilden)");        
        buttonJaeger.addActionListener(this);

        ausgabefeldK = new JTextField("");

        buttonKrieger = new JButton("Krieger (ausbilden)");
        buttonKrieger.addActionListener(this);

        ausgabefeldB = new JTextField("");
        
        buttonBauarbeiter = new JButton("Bauarbeiter(ausbilden)");
        buttonBauarbeiter.addActionListener(this);

        buttonSammeln = new JButton("Sammeln");
        buttonSammeln.addActionListener(this);

        buttonFüürstelle = new JButton("Füürstelle");
        buttonFüürstelle.addActionListener(this);

        buttonJagd = new JButton("Jachen");
        buttonJagd.addActionListener(this);

        buttonUmaMatimbahöhle = new JButton("Uma-Matimbahöhle");
        buttonUmaMatimbahöhle.addActionListener(this);

        buttonKriech = new JButton("Kriech");
        buttonKriech.addActionListener(this);

        buttonBamboochaHöhle = new JButton("Bamboocha-Höhle");
        buttonBamboochaHöhle.addActionListener(this);

        ausgabefeldF = new JTextField("");
        ausgabefeldN = new JTextField("");
        ausgabefeldBIG = new JTextField("");
        
        /* Components anordnen: */
        CellConstraints cc = new CellConstraints();
        cp.add(ausgabefeldJ,            cc.xy(1, 1));
        cp.add(buttonJaeger,            cc.xy(2, 1));
        cp.add(ausgabefeldK,            cc.xy(1, 2));
        cp.add(buttonKrieger,           cc.xy(2, 2));
        cp.add(ausgabefeldB,            cc.xy(1, 3));
        cp.add(buttonBauarbeiter,       cc.xy(2, 3));
        cp.add(buttonSammeln,           cc.xy(1, 4));
        cp.add(buttonFüürstelle,        cc.xy(2, 4));
        cp.add(buttonJagd,              cc.xy(1, 5));
        cp.add(buttonUmaMatimbahöhle,   cc.xy(2, 5));
        cp.add(buttonKriech,            cc.xy(1, 6));
        cp.add(buttonBamboochaHöhle,    cc.xy(2, 6));
        cp.add(ausgabefeldF,            cc.xy(1, 7));
        cp.add(ausgabefeldN,            cc.xy(2, 7));
        cp.add(ausgabefeldBIG,          cc.xyw(1, 8, 2));
        
        
        /* Frame anzeigen: */
        setVisible(true);
    }
    
    
    // ActionListener-Implementierung ------------------------------------------
    public void actionPerformed(ActionEvent e) {
        // Button-Aktionen implementieren
    }
    
    
    // Testcode ----------------------------------------------------------------
    public static void main(String[] args) {
       new FormsExample();
    }
}


zugegeben, für diesen fall hier ist das ganze vielleicht ein wenig überdimensioniert. falls du später aber evtl. komplexere gui's basteln willst/musst, bist du mit der Forms-library relativ gut bedient.

btw. sieht dann so aus:
FormsExample.PNG
 
G

Guest

Gast
Hi m@nu,

vielen Dank dir, genauso soll es später aussehen... :)
Das Problem ist nur, dass ich die GUI leider im Grid(back?)layout erstellen muss... :-(
Kennt dafür noch jemand eine Lösung?
Und noch 2 weitere Fragen:
Wäre es möglich über die ganze GUI ein HIntergrundbild einzurichten und gibt es eine Funktion die die eingefügten Bilder genau passend in die Buttons integriert?

Danke weiterhin im voraus, lg, JFreezerR
 

m@nu

Bekanntes Mitglied
die verschieden "langen" zellen sind meines wissens nur mit dem GridLayout nicht realisierbar. da muss schon das GridBagLayout her...
leider habe ich mich mit dem GridBagLayout nur in ansätzen früher in der schule mal beschäftigt... war mir zu umständlich ;)

bei sun gibts aber entsprechende tutorial dazu
:arrow: api: http://java.sun.com/j2se/1.4.2/docs/api/java/awt/GridBagLayout.html
:arrow: tutorial: http://java.sun.com/docs/books/tutorial/uiswing/layout/gridbag.html


du willst ein hintergrundbild haben? "über" der ganze gui? im hintergrund? nur auf einem einzelnen button?
bitte beschreib doch mal genauer... :)
 
G

Guest

Gast
Hi!

Darf die GUI nun doch im FormLayout erstellen :) :) :)
Doch habe ich nun ein weiteres Problem - benutze den JavaEditor und er will den Quelltext irgendwie nicht kompilieren :-( Woran kann das liegen?

Das Hintergrundbild sollte über die "ganze" GUI verlaufen (also bei dem Beispielbild jetzt, in dem Bereich unter dem letzten Ausgabefeld), falls dies möglich ist
 
G

Guest

Gast
Darf die GUI nun doch im FormLayout erstellen :) :) :)
Doch habe ich nun ein weiteres Problem - benutze den JavaEditor und er will den Quelltext irgendwie nicht kompilieren :-( Woran kann das liegen?

Das Hintergrundbild sollte über die "ganze" GUI verlaufen (also bei dem Beispielbild jetzt, in dem Bereich unter dem letzten Ausgabefeld), falls dies möglich ist
 
G

Guest

Gast
und das mit den Bildern in den Buttons war so gemeint, dass das Bild den ganzen Button ausfüllt (selbst passend auf die größe eingestellt wird und die Schrift darüber ist, also auch eine Art Hintergrundbild in den Buttons)
 

m@nu

Bekanntes Mitglied
du brauchst natürlich noch die oben beschriebene library:
:arrow: http://www.jgoodies.net/freeware/forms/index.html

dieses jar-file muss im classpath vorhanden sein. ansonsten findet java das FormLayout und die dazugehörigen klassen gar nicht.
hast du bereits erfahrung mit externen libraries?
desweiteren sind bei meinem sourcecode oben keine imports dabei. benutzt du eclipse?
ansonsten wäre ein stacktrace/fehlermeldung natürlich immer top, wenn code nicht kompiliert ;)

hmm, hierzu müsstest du am ehsten einen JPanel so erweitern, dass der ein hintergrundbild anzeigt.

beispiel:
Code:
class BildJPanel extends JPanel {
    Image bild;

    public BildJPanel(Image bild) {
        this.bild = bild;
    }

    protected void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.drawImage(bild, 0,0, null);
    }
}
 
G

Guest

Gast
Nein, habe bisher leider keine Erfahrung mit externen Libraries :-(
Das Problem bei dem jar-File ist, dass in dem Ordner in dem meine andern Klassen sind, alle die Endung .java besitzen - nehme an, dass die .jar Datei am besten auch in eine.java Datei umgewandelt werden sollte...

Damit du dir vlt einen kleinen Einblick über mein "Java-Wissen" machen kannst - habe alle Infos hauptsächlich von:
http://www.pohlig.de/Informatik/JavaUmgebung/index.htm also damit erstelle ich immer meine Java-Progs
und so eine GUI haben wir mal in der Schule erstellt - also die RechnerGUIMathematik: http://www.pohlig.de/Unterricht/Inf2005/Kap08/8.2.1_J_Frame_Vatriante.htm

Nein, denke nicht das ich Eclipse verwende

und das sind meine Fehlermeldungen - liegt höchstwahrschenlich halt daran, dass er nicht auf die Klasse zugreifen kann:

42 errors

Compiliere C:\Programme\Java\jdk1.5.0_10\jre\bin\java\FormsExample.java mit Java-Compiler
FormsExample.java:1:35: cannot find symbol
symbol: class JFrame
public class FormsExample extends JFrame implements ActionListener {
^
FormsExample.java:1:53: cannot find symbol
symbol: class ActionListener
public class FormsExample extends JFrame implements ActionListener {
^
FormsExample.java:3:13: cannot find symbol
symbol : class JTextField
location: class FormsExample
private JTextField ausgabefeldJ;
^
FormsExample.java:4:13: cannot find symbol
symbol : class JTextField
location: class FormsExample
private JTextField ausgabefeldK;
^
FormsExample.java:5:13: cannot find symbol
symbol : class JTextField
location: class FormsExample
private JTextField ausgabefeldB;
^
FormsExample.java:6:13: cannot find symbol
symbol : class JTextField
location: class FormsExample
private JTextField ausgabefeldF;
^
FormsExample.java:7:13: cannot find symbol
symbol : class JTextField
location: class FormsExample
private JTextField ausgabefeldN;
^
FormsExample.java:8:13: cannot find symbol
symbol : class JTextField
location: class FormsExample
private JTextField ausgabefeldBIG;
^
FormsExample.java:10:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonJaeger;
^
FormsExample.java:11:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonKrieger;
^
FormsExample.java:12:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonBauarbeiter;
^
FormsExample.java:13:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonSammeln;
^
FormsExample.java:14:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonFüürstelle;
^
FormsExample.java:15:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonJagd;
^
FormsExample.java:16:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonUmaMatimbahöhle;
^
FormsExample.java:17:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonKriech;
^
FormsExample.java:18:13: cannot find symbol
symbol : class JButton
location: class FormsExample
private JButton buttonBamboochaHöhle;
^
FormsExample.java:97:33: cannot find symbol
symbol : class ActionEvent
location: class FormsExample
public void actionPerformed(ActionEvent e) {
^
FormsExample.java:24:34: cannot find symbol
symbol : variable EXIT_ON_CLOSE
location: class FormsExample
setDefaultCloseOperation(EXIT_ON_CLOSE);
^
FormsExample.java:25:9: cannot find symbol
symbol : method setSize(int,int)
location: class FormsExample
setSize(800, 800);
^
FormsExample.java:27:9: cannot find symbol
symbol : class Container
location: class FormsExample
Container cp = getContentPane();
^
FormsExample.java:27:24: cannot find symbol
symbol : method getContentPane()
location: class FormsExample
Container cp = getContentPane();
^
FormsExample.java:28:26: cannot find symbol
symbol : class FormLayout
location: class FormsExample
cp.setLayout(new FormLayout(
^
FormsExample.java:35:28: cannot find symbol
symbol : class JTextField
location: class FormsExample
ausgabefeldJ = new JTextField("");
^
FormsExample.java:37:28: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonJaeger = new JButton("Jaeger (ausbilden)");
^
FormsExample.java:40:28: cannot find symbol
symbol : class JTextField
location: class FormsExample
ausgabefeldK = new JTextField("");
^
FormsExample.java:42:29: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonKrieger = new JButton("Krieger (ausbilden)");
^
FormsExample.java:45:28: cannot find symbol
symbol : class JTextField
location: class FormsExample
ausgabefeldB = new JTextField("");
^
FormsExample.java:47:33: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonBauarbeiter = new JButton("Bauarbeiter(ausbilden)");
^
FormsExample.java:50:29: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonSammeln = new JButton("Sammeln");
^
FormsExample.java:53:32: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonFüürstelle = new JButton("Füürstelle");
^
FormsExample.java:56:26: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonJagd = new JButton("Jachen");
^
FormsExample.java:59:37: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonUmaMatimbahöhle = new JButton("Uma-Matimbahöhle");
^
FormsExample.java:62:28: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonKriech = new JButton("Kriech");
^
FormsExample.java:65:36: cannot find symbol
symbol : class JButton
location: class FormsExample
buttonBamboochaHöhle = new JButton("Bamboocha-Höhle");
^
FormsExample.java:68:28: cannot find symbol
symbol : class JTextField
location: class FormsExample
ausgabefeldF = new JTextField("");
^
FormsExample.java:69:28: cannot find symbol
symbol : class JTextField
location: class FormsExample
ausgabefeldN = new JTextField("");
^
FormsExample.java:70:30: cannot find symbol
symbol : class JTextField
location: class FormsExample
ausgabefeldBIG = new JTextField("");
^
FormsExample.java:73:9: cannot find symbol
symbol : class CellConstraints
location: class FormsExample
CellConstraints cc = new CellConstraints();
^
FormsExample.java:73:34: cannot find symbol
symbol : class CellConstraints
location: class FormsExample
CellConstraints cc = new CellConstraints();
^
FormsExample.java:92:9: cannot find symbol
symbol : method setVisible(boolean)
location: class FormsExample
setVisible(true);
^
41 errors
 

m@nu

Bekanntes Mitglied
imports
dir fehlen die import-statements. darum findet der compiler die klassen nicht (cannot find symbol)

das hier sind die passenden import statements:
Code:
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTextField;

import com.jgoodies.forms.layout.CellConstraints;
import com.jgoodies.forms.layout.FormLayout;

eclipse ist eine andere entwicklungsumgebung für java. aber zu beginn ist ein einfacheres tool sicher besser :)
wollte nur wissen, ob du diese umgebung verwendest, da man dort (natürlich auch in anderen editoren) die imports automatisch generieren lassen kann.


jar
ein jar-file ist technisch gesehen nichts anderes als eine zip-datei, welche bereits kompilierte java class-files enthält. deshalb ist es nicht nötig, irgendetwas am dateinamen zu ändern. du muss java lediglich darauf hinweisen, dass es in der entsprechenden datei nach class-files suchen soll. dies wird wiederum im classpath festgelegt.

schau in deinem editor mal in die konfiguration...
auf der seite, die du mir angegeben hast, steht unter "Konfiguration des Javaeditors" folgendes:
Zusätzliche Classpaths werden immer mit Semikola von einander getrennt. Das Einfügen von ..\;..\..\;..\..\..\ ist sinnvoll wenn man mit Paketen arbeiten will.

trag in dem beschriebenen feld zusätzlich den pfad zur jar-datei vom FormsLayout ein... dann sollte eigentlich alles bereit sein, um zu kompilieren.
 
G

Guest

Gast
und schon wieder einen Schritt weiter, Danke :)

Nun sinds aber immer noch 5 Fehler wegen der Klasse:

Compiliere C:\Programme\Java\jdk1.5.0_10\jre\bin\java\FormsExample.java mit Java-Compiler
FormsExample.java:9:21: package forms.layout does not exist
import forms.layout.CellConstraints;
^
FormsExample.java:10:21: package forms.layout does not exist
import forms.layout.FormLayout;
^
FormsExample.java:39:26: cannot find symbol
symbol : class FormLayout
location: class FormsExample
cp.setLayout(new FormLayout(
^
FormsExample.java:84:9: cannot find symbol
symbol : class CellConstraints
location: class FormsExample
CellConstraints cc = new CellConstraints();
^
FormsExample.java:84:34: cannot find symbol
symbol : class CellConstraints
location: class FormsExample
CellConstraints cc = new CellConstraints();
^
5 errors



Habe schon etwas in den Konfigs rumgespielt und probiert das Layout zu impoertieren - klappt aber leider noch nicht :-(
 

m@nu

Bekanntes Mitglied
hm, wenn das mit dem import des jar-files nicht korrekt vonstatten geht, dann ist klar des der compiler die klassen vom FormLayout nicht findet...

wie kompilierst du denn? direkt in der kommandozeile? oder gibts da in deinem java editor irgendwo einen befehl?
 
G

Guest

Gast
Muss im JavaEditor einfach nur ein Icon anklicken, dann kompiliert er von alleine...

m@nu hat gesagt.:
hm, wenn das mit dem import des jar-files nicht korrekt vonstatten geht, dann ist klar des der compiler die klassen vom FormLayout nicht findet...

wie kompilierst du denn? direkt in der kommandozeile? oder gibts da in deinem java editor irgendwo einen befehl?
 

m@nu

Bekanntes Mitglied
dann bleibt dir nur das experimentieren mit der oben genannten einstellung, bis der dann die jar auch findet :-/
was hast du denn dort eingetragen?
 
G

Guest

Gast
Jar: C:\Programme\Java\jdk1.5.0_11\bin\jar.exe
Parameter: -cfv
Dateien: *.class
 

m@nu

Bekanntes Mitglied
nene! das ist der falsche ort... da ist nur das zeugs drin, welche zum erstellen eigener jar's helfen...

du musst beim register "interpreter" den pfad zur jar vom FormsLayout im feld "user classpath" ergänzen...
also z.b. "C:\Jars\forms.jar" hinzufügen (semikolon zum trennen nicht vergessen.)
 
G

Guest

Gast
Und wieder eine Änderung... ;-)

Habe herausgefunden, dass es leider nicht möglich ist, diese Layout zu verwenden, da wir in der Schule eine zu alte Java Version besitzen :-( Habe dafür aber eine andere Möglichkeit gefunden, wobei ich dazu noch eine frage habe:

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

public class Projekt extends JFrame {
// Anfang Variablen
  private JPanel northPanel, centerPanel;
  private JTextField ausgabefeldJ, ausgabefeldK, ausgabefeldB, ausgabefeldF,
  ausgabefeldN, ausgabefeldBIG;
  private JButton buttonJaeger, buttonKrieger, buttonBauarbeiter, buttonSammeln,
  buttonFüürstelle, buttonJagd, buttonUma_Matimbahöhle, buttonKriech,
  buttonBamboocha_Höhle;
  private JLabel labelausgabefeldF, labelausgabefeldN;
// Ende Variablen


public Projekt(String title) {
    super(title);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    setSize(800, 800);
    Container cp = getContentPane();
    cp.setLayout(new BorderLayout());

    northPanel = new JPanel (new GridLayout(8,2,2,2));
    cp.add(northPanel, BorderLayout.NORTH);

    centerPanel = new JPanel (new GridLayout(1,1,2,2));
    cp.add (centerPanel, BorderLayout.CENTER);

    ausgabefeldJ = new JTextField("");
    northPanel.add (ausgabefeldJ);

    buttonJaeger = new JButton("Jaeger (ausbilden)");
    northPanel.add (buttonJaeger);
    buttonJaeger.setIcon(new ImageIcon("Jaeger.jpg"));


    ausgabefeldK = new JTextField("");
    northPanel.add (ausgabefeldK);

    buttonKrieger = new JButton("Krieger (ausbilden)");
    northPanel.add (buttonKrieger);
    buttonKrieger.setIcon(new ImageIcon("Krieger.jpg"));

    ausgabefeldB = new JTextField("");
    northPanel.add (ausgabefeldB);

    buttonBauarbeiter = new JButton("Bauarbeiter(ausbilden)");
    northPanel.add (buttonBauarbeiter);
    buttonBauarbeiter.setIcon(new ImageIcon("Bauarbeiter.jpg"));

    buttonSammeln = new JButton("Sammeln");
    northPanel.add (buttonSammeln);
    buttonSammeln.setIcon(new ImageIcon("Sammeln.jpg"));

    buttonFüürstelle = new JButton("Füürstelle");
    northPanel.add (buttonFüürstelle);
    buttonFüürstelle.setIcon(new ImageIcon("Feuerstelle.jpg"));

    buttonJagd = new JButton("Jachen");
    northPanel.add (buttonJagd);
    buttonJagd.setIcon(new ImageIcon(" Jagen.jpg"));

    buttonUma_Matimbahöhle = new JButton("Uma-Matimbahöhle");
    northPanel.add (buttonUma_Matimbahöhle);
    buttonUma_Matimbahöhle.setIcon(new ImageIcon("Umamatimba.jpg "));

    buttonKriech = new JButton("Kriech");
    northPanel.add (buttonKriech);
    buttonKriech.setIcon(new ImageIcon("Kriech.jpg"));

    buttonBamboocha_Höhle = new JButton("Bamboocha-Höhle");
    northPanel.add (buttonBamboocha_Höhle);
    buttonBamboocha_Höhle.setIcon(new ImageIcon("Bamboocha.jpg"));


    labelausgabefeldF = new JLabel("Anzahl Felle:    ");
    labelausgabefeldF.setHorizontalAlignment(SwingConstants.RIGHT);
    northPanel.add(labelausgabefeldF);
    ausgabefeldF = new JTextField("");
    northPanel.add (ausgabefeldF);


    labelausgabefeldN = new JLabel("Anzahl Nahrung:    ");
    labelausgabefeldN.setHorizontalAlignment(SwingConstants.RIGHT);
    northPanel.add(labelausgabefeldN);

    ausgabefeldN = new JTextField("");
    northPanel.add (ausgabefeldN);

    ausgabefeldBIG = new JTextField("");
    centerPanel.add (ausgabefeldBIG);


    setVisible(true);

  }
  public static void main(String[] args) {
    new Projekt("HOMO-Sapiens");
  }}

Und zwar würde ich es gerne schaffen, dass sich die Bilder an die Buttongröße anpassen und 2. dass das letzte JLabelTextfield-ausgabefeldBIG eine "normale" Größe einnimmt und nicht einfach den ganzen Rest des Fensters - gibt es da eine Möglichkeit die Größe des Ausgabefeldes festzulegen?
 
G

Guest

Gast
hab jetzt alles hinbekommen wie ichs wollte, Danke nochmal an alle die mir geholfen haben!
 

m@nu

Bekanntes Mitglied
ui, hab den thread ganz vergessen... sry.
super wenn aber doch noch alles geklappt hat :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Juelin Für Java-Spezialisten AWT, Swing, JavaFX & SWT 4
Juelin Java <-> Delphi AWT, Swing, JavaFX & SWT 3
H Exceptions seit java: 1.6.0_65 Umstellung AWT, Swing, JavaFX & SWT 3
H Exception: java.lang.ClassCastException AWT, Swing, JavaFX & SWT 2
M JavaFX java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found AWT, Swing, JavaFX & SWT 5
J Java GUI Dropdown-Menü anzeigen AWT, Swing, JavaFX & SWT 5
M Eigene Java Klasse für allgemeine Grafikelemente AWT, Swing, JavaFX & SWT 8
thor_norsk Java - Allgemeine - Frage AWT, Swing, JavaFX & SWT 14
W Kennt jemand Dear ImGui (und den Java-Wrapper dazu)? AWT, Swing, JavaFX & SWT 0
B Java Projekt mit JavaFX und jfoenix ausführbar machen AWT, Swing, JavaFX & SWT 46
D JAVA Schieberegler AWT, Swing, JavaFX & SWT 6
N JavaFX Einfacher Taschenrechner mit Scene Builder und Java FX AWT, Swing, JavaFX & SWT 0
Jose05 Aus einer normalen Java Klasse eine FXML-Klasse laden AWT, Swing, JavaFX & SWT 12
S Welches Java Layout sollte ich verwenden? AWT, Swing, JavaFX & SWT 3
B Actionlistener mit Java Swing AWT, Swing, JavaFX & SWT 2
P Fehlermeldung: Error: Could not find or load main class set Caused by: java.lang.ClassNotFoundException: set AWT, Swing, JavaFX & SWT 5
Encera Java FX im Eclipse-Marketplace nichtmehr auffindbar AWT, Swing, JavaFX & SWT 6
_user_q Versionscode aus build.gradle in Java-Klasse ausgeben lassen AWT, Swing, JavaFX & SWT 14
M Java Dateien kopieren mit Fortschrittsbalken AWT, Swing, JavaFX & SWT 13
M Frage zu Java Bundesligaverwaltung AWT, Swing, JavaFX & SWT 7
_user_q Gibt es eine Möglichkeit, in Java alle möglichen Zeichen automatisch tippen zu lassen? AWT, Swing, JavaFX & SWT 13
E 3D-Grafik Java Fatal error bei LWJGL AWT, Swing, JavaFX & SWT 2
Heldderschatten Java Events und Interfaces AWT, Swing, JavaFX & SWT 18
volcanos Scrollen: JScrollPane mit Graphics g und Java-Fonts extends Frame ? AWT, Swing, JavaFX & SWT 5
sserio Java Fx - Problem AWT, Swing, JavaFX & SWT 3
U Warum wird zweimal die Affinetransformation estellt (2Dgraphics, Java)? AWT, Swing, JavaFX & SWT 31
U was bewirkt die methode fill und unterschied zu anderen fill Methoden in 2dgraphics? (Java)? AWT, Swing, JavaFX & SWT 6
DonBronson Java Graphics bewegbar machen (Drag&Drop) AWT, Swing, JavaFX & SWT 3
Yonnig Lokale HTML-Datei in Java GUI rendern AWT, Swing, JavaFX & SWT 4
E Java-TexturePaint sehr langsam AWT, Swing, JavaFX & SWT 9
N Java MySQL Datenbank durchsuchen? AWT, Swing, JavaFX & SWT 7
maximstein JavaFX WebView - java.lang.NoSuchMethodError: 'boolean com.sun.prism.ResourceFactory.isDisposed()' AWT, Swing, JavaFX & SWT 4
Splayfer Custom Font in AttributedString Java AWT, Swing, JavaFX & SWT 4
imawake Java Paket-Tracking Programm 📦 AWT, Swing, JavaFX & SWT 7
izoards *.doc Seitenränder per Java setzen... AWT, Swing, JavaFX & SWT 14
T FXML Datei in Java Code einbinden: javafx.fxml.LoadException AWT, Swing, JavaFX & SWT 2
J Key-Listener in Java AWT, Swing, JavaFX & SWT 37
J Java Datei durch CMD mit Parameter ausführen AWT, Swing, JavaFX & SWT 1
N Java Mouse Listiner macht alles zusammen AWT, Swing, JavaFX & SWT 4
J Java FX NullPointerException, ObservableList wird in View nicht angezeigt.. AWT, Swing, JavaFX & SWT 34
T Exception in thread "main" java.lang.NoClassDefFoundError AWT, Swing, JavaFX & SWT 4
M Error occurred during initialization of boot layer java.lang.module.FindException: Module javafx.controls not found AWT, Swing, JavaFX & SWT 14
AmsananKING Java Menü-Problem AWT, Swing, JavaFX & SWT 1
T Swing DPI-Skalierung und Java 2D unter Java 11 (und Windows 10) AWT, Swing, JavaFX & SWT 2
J Spiel mit Java AWT, Swing, JavaFX & SWT 9
I AWT java.awt.FileDialog - "coffee cup"-Icon lässt sich nicht ersetzen AWT, Swing, JavaFX & SWT 14
O Ein Java-Programm mit Swing steuern AWT, Swing, JavaFX & SWT 1
izoards Java FX Window Event SHOWING AWT, Swing, JavaFX & SWT 17
N FXMLLoader.load java.lang.RuntimeException: Gradle AWT, Swing, JavaFX & SWT 2
T Java GUI - Würfel Programm AWT, Swing, JavaFX & SWT 6
JojoSand Java Programm wird nicht gestartet - keinen Fehlerhinweis AWT, Swing, JavaFX & SWT 9
dtr84 JavaFX/OpenJFX mittels Apache Ivy einbinden (Java 11) AWT, Swing, JavaFX & SWT 18
M Jogl und Java 3d AWT, Swing, JavaFX & SWT 0
S0PEX JavaFX Java 8 auf 15 migrieren OpenJFX mit Gradle eingebunden, jedoch nicht gefunden !? AWT, Swing, JavaFX & SWT 4
I Gui in bestehendes Java-Programm AWT, Swing, JavaFX & SWT 11
V Java-Zeichenfeld mit AWT AWT, Swing, JavaFX & SWT 3
N java Gui friert scheinbar zufällig ein AWT, Swing, JavaFX & SWT 5
T Anderen Java Code durch Code kompilieren und Fehler in Label ausgeben AWT, Swing, JavaFX & SWT 5
P Java Fx einrichten AWT, Swing, JavaFX & SWT 2
pkm Frage wegen java.lang.IllegalStateException bei DocumentListener AWT, Swing, JavaFX & SWT 4
S JavaFX Java Custom Node Grafik zurückgeben AWT, Swing, JavaFX & SWT 2
MiMa Java und JavaFX 13 läuft endlich AWT, Swing, JavaFX & SWT 4
N eclipse Java, bilder benutzten Funktioniert nicht AWT, Swing, JavaFX & SWT 6
Trèfle Ausklappbare Diagramme in Java AWT, Swing, JavaFX & SWT 1
R Java, GUI, Hintergrundbild, Image, AWT, Swing, JavaFX & SWT 4
K JAVA FX Constraints AWT, Swing, JavaFX & SWT 2
F Java FX und webcam AWT, Swing, JavaFX & SWT 1
T Wie kann man in java aufwendige grafiken programmieren AWT, Swing, JavaFX & SWT 1
M Swing Java Swing/AWT Combobox Bug AWT, Swing, JavaFX & SWT 3
S Java GUI durch variable Größe einer Map anpassen AWT, Swing, JavaFX & SWT 3
J Java SWT Tabelleninhalt formattieren AWT, Swing, JavaFX & SWT 10
Blender3D Falsche Werte mit Java Toolkit Screensize AWT, Swing, JavaFX & SWT 4
K Swing AWT-EventQueue-1 java.lang.NoClassDefFoundError bei setVisible(true) AWT, Swing, JavaFX & SWT 3
A Java Programm gestalten AWT, Swing, JavaFX & SWT 4
B [Problem] Java öffnet Word-Datein nicht AWT, Swing, JavaFX & SWT 14
S Swing Java Swing AWT, Swing, JavaFX & SWT 6
I Java Bildfarbe ändern wie bei Photoshop AWT, Swing, JavaFX & SWT 9
R JavaFX Java FXML Vererbung in Klassen AWT, Swing, JavaFX & SWT 9
T Java: Zwei abhängige JSlider machen nicht das, was sie sollen AWT, Swing, JavaFX & SWT 4
J Parallele Aktionen in Java FX richtig durchführen. AWT, Swing, JavaFX & SWT 5
Neumi5694 java.awt.Window nach javafx.stage.Window AWT, Swing, JavaFX & SWT 1
M JavaFX java.lang.IllegalStateException: Location is not set. AWT, Swing, JavaFX & SWT 9
L Java- CardLayout AWT, Swing, JavaFX & SWT 10
M Java zeichnet nicht pixelgenau AWT, Swing, JavaFX & SWT 40
B Swing Eclipse is running under 0, but this Java project has a 1.6 Java compliance level, so WindowBuilder AWT, Swing, JavaFX & SWT 2
L Java- UI zweites Fenster aus einer anderen Klasse öffnen durch ButtonClick AWT, Swing, JavaFX & SWT 4
S Java Gui AWT, Swing, JavaFX & SWT 5
R Sierpinski Dreieck mit Java FX AWT, Swing, JavaFX & SWT 4
Flynn java.lang.UnsupportedOperationException: Not supported yet AWT, Swing, JavaFX & SWT 7
D Zwei getrennte Java Klassen verbinden. Wie ? AWT, Swing, JavaFX & SWT 2
D SQL Statements mit Java Swing benutzen AWT, Swing, JavaFX & SWT 4
D DatePicker für Java Swing AWT, Swing, JavaFX & SWT 2
S AWT Java print dialog Problem AWT, Swing, JavaFX & SWT 0
N Aktualisierung des Fensters AWT Java ohne Ruckeln AWT, Swing, JavaFX & SWT 3
MiMa Java, Maven Projekte nach JavaFX? AWT, Swing, JavaFX & SWT 3
T Java Swing - kleines Rechteck unter dem cursor AWT, Swing, JavaFX & SWT 5
L java.lang.NullPointerException - Fehlermeldung AWT, Swing, JavaFX & SWT 2
D Swing Java JComboBox Example AWT, Swing, JavaFX & SWT 16
J AWT System Farben / java.awt.SystemColor funktioniert nicht AWT, Swing, JavaFX & SWT 4
MiMa Java Projekt nach JavaFX convertieren AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben