Hallo,
Ich habe folgendes Problem:
Mit einem GridBackLayout habe ich meine Labels und Buttons angeordnet, soweit ging dies auch noch.
Zur Verbesserung der Optik hatte ich vorerst die Hintergründe der Labels grau gefärbt (der zugewiesene Platz für das einzele Label ist grau), um eine Denkstützte für mich zu haben , wie groß die Labels und Buttons genau sind.
Nun wollte ich neben die verschiedenen Labels verschiedene Grafiken einfügen, was auch klappte. Das Einfügen und positionieren der Grafiken an sich stellt kein Problem dar, aber leider verdecken die "gefärbeten" Hintergründe der Labels die Grafiken. Ist es möglich genau diese Hintergründe irgendwie Transparent zu machen oder die Grafiken irgendwie in den Vordergrund zu bringen?
Es geht in dem angehängten Code um die Grafik "goldmine"
PS: Das Ganze handelt sich um ein Projekt, daher auch die 2 benötigten Bilder, auch wenn das Eine etwas "lustig" aussieht, das ist nur ein Entwurf.
Die Bilder und die Java Datei müssen nur zusammen in einen Ordner damit es geht.
Hier mal ein Teil des Codes damit es besser zu verstehen ist:
Benötigte Bilder:
/* Wichtig , dass das Applet auf die Größe 600*400 geändert wird*/
import java.awt.event.*;
import java.awt.*;
import java.util.*;
import java.applet.*;
import java.awt.Image;
import java.awt.Graphics;
public class frage extends Applet
{
Image Hintergrund,Goldsymbol;
Label l_Gold, l_Arbeiter, l_Soldat, l_Wohngebäude, l_Bauernhof, l_Held;
Label l_leer1, l_leer2, l_leer3, l_leer4, l_leer5, l_leer6, l_leer7;
Button b_Gebäude, b_Forschung, b_Bedienstete;
public void init()
{
GridBagLayout gbl = new GridBagLayout();
GridBagConstraints gbc;
setLayout(gbl);
gbc = makegbc(0,0,1,1);
l_Gold = new Label("Gold:");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_Gold, gbc);
gbc = makegbc(0,1,1,1);
l_leer1 = new Label(" ");
gbc.ipady = -20;
gbc.ipadx = 70;
gbl.setConstraints(l_leer1, gbc);
gbc = makegbc(1,0,1,1);
l_Arbeiter = new Label("Arbeiter:");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_Arbeiter, gbc);
gbc = makegbc(1,1,1,1);
l_leer2 = new Label(" ");
gbc.ipady = -20;
gbc.ipadx = 70;
gbl.setConstraints(l_leer2, gbc);
gbc = makegbc(2,0,1,1);
l_Soldat = new Label("Soldaten:");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_Soldat, gbc);
gbc = makegbc(2,1,1,1);
l_leer3 = new Label(" ");
gbc.ipady = -20;
gbc.ipadx = 70;
gbl.setConstraints(l_leer3, gbc);
gbc = makegbc(3,0,1,1);
l_Wohngebäude = new Label("Wohngebaeude:");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_Wohngebäude, gbc);
gbc = makegbc(3,1,1,1);
l_leer4 = new Label(" ");
gbc.ipady = -20;
gbc.ipadx = 70;
gbl.setConstraints(l_leer4, gbc);
gbc = makegbc(4,0,1,1);
l_Bauernhof = new Label("Bauernhoefe:");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_Bauernhof, gbc);
gbc = makegbc(4,1,1,1);
l_leer5 = new Label(" ");
gbc.ipady = -20;
gbc.ipadx = 70;
gbl.setConstraints(l_leer5, gbc);
gbc = makegbc(5,0,1,1);
l_Held = new Label("Helden:");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(l_Held, gbc);
gbc = makegbc(5,1,1,1);
l_leer6 = new Label(" ");
gbc.ipady = -20;
gbc.ipadx = 70;
gbl.setConstraints(l_leer6, gbc);
gbc = makegbc(0,2,1,1);
l_leer7 = new Label(" ");
gbc.ipady = 300;
gbc.ipadx = -17;
gbl.setConstraints(l_leer7, gbc);
gbc = makegbc(1,3,1,1);
b_Gebäude = new Button("Gebaeude");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(b_Gebäude, gbc);
gbc = makegbc(2,3,1,1);
b_Forschung = new Button("Forschung");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(b_Forschung, gbc);
gbc = makegbc(3,3,1,1);
Button b_Bedienstete = new Button("Bedienstete");
gbc.fill = GridBagConstraints.BOTH;
gbl.setConstraints(b_Bedienstete, gbc);
l_Gold.setBackground(Color.gray);
l_Arbeiter.setBackground(Color.gray);
l_Soldat.setBackground(Color.gray);
l_Wohngebäude.setBackground(Color.gray);
l_Bauernhof.setBackground(Color.gray);
l_Held.setBackground(Color.gray);
add(l_Gold);
add(l_Arbeiter);
add(l_Soldat);
add(l_Wohngebäude);
add(l_Bauernhof);
add(l_Held);
add(l_leer1);
add(l_leer2);
add(l_leer3);
add(l_leer4);
add(l_leer5);
add(l_leer6);
add(l_leer7);
add(b_Gebäude);
add(b_Forschung);
add(b_Bedienstete);
}
public void paint(Graphics g)
{
Image Hintergrund = getImage(getDocumentBase(), "IT Projekt.jpg"); //Hintergrundbild//
g.drawImage(Hintergrund,0,39, 600, 327, this);
Image Goldsymbol = getImage(getDocumentBase(), "goldmine.jpg");
g.drawImage(Goldsymbol,81,4,30,30,this);
}
private GridBagConstraints makegbc(int x, int y, int width, int height)
{
GridBagConstraints gbc = new GridBagConstraints();
gbc.gridx = x;
gbc.gridy = y;
gbc.gridwidth = width;
gbc.gridheight = height;
gbc.insets = new Insets(1,1,1,1);
return gbc;
}
}
Alles anzeigen