Foezjie
Legacy Member
Omdat ik niet langer de Java-thread wou hijacken, deze thread
Ik zal direct de code geven:
Zoals in de Java thread gezegd werd, wou ik proberen die JLabels enzo te vervangen door middel van een JPanel, maar ik geraak er echt niet aan uit hoe die werken.
Hoe ik denk dat het gaat:
Wat ik alleszins vermoed is dat ik een paar dingen vergeten ben toe te voegen. Ik heb java.awt.* geïmporteerd, en denk niet dat ik nog meer nodig heb.
Mijn vraag is nu eigenlijk: hoe werkt zo'n JLabel precies? Kan iemand een voorbeeldje geven van hoe ik bijvoorbeeld een afbeelding invoeg gebruikmakend van zo'n JPanel?
Ik word niet veel wijzer van deze site, er worden teveel termen gebruikt die ik niet snap..
Dank bij voorbaat,
Fuji

Ik zal direct de code geven:
Code:
import javax.swing.*;
import java.awt.*;
class JavaGUI extends JFrame{
Container paneel;
//Kleuren van de spelers
Color speler1 = new Color(225,225,0); // Geel
Color speler2 = new Color(255,0,0); // Rood
Color speler3 = new Color(0,0,255); // Blauw
Color speler4 = new Color (0,255,0); // Groen
public JavaGUI(){
setTitle("Javapoly");
setSize (650,544);
setLocation(400,200);
paneel = getContentPane();
paneel.setLayout(null);
JLabel lblPrent;
lblPrent = new JLabel(new ImageIcon("monopoly.gif"));
lblPrent.setBounds(0,0,502,508);
lblPrent.setVisible(true);
paneel.add(lblPrent);
paneel.repaint();
}
public void tekenSpelers(int intAantalSpelers){
Graphics g = paneel.getGraphics();
for(int teller = 1; teller < 100; teller++){
// Eerste speler
g.setColor(speler1);
g.fillOval(440,440,20,20);
// Tweede speler
g.setColor(speler2);
g.fillOval(470,440,20,20);
}
if (intAantalSpelers == 3){
for(int teller = 1; teller < 100; teller++){
// Derde speler
g.setColor(speler3);
g.fillOval(440,470,20,20);
}
}
if (intAantalSpelers == 4){
for(int teller = 1; teller < 100; teller++){
// Derde speler
g.setColor(speler3);
g.fillOval(440,470,20,20);
// Vierde speler
g.setColor(speler4);
g.fillOval(470,470,20,20);
}
}
} // Einde tekenSpelers
public void toonNamen(String strNaam, int intKleur, int intYWaarde){
Graphics g = paneel.getGraphics();
JLabel lblSpeler = new JLabel(strNaam);
lblSpeler.setBounds(520, intYWaarde, 145, 50);
switch (intKleur){
case 1: lblSpeler.setForeground(speler1);break;
case 2: lblSpeler.setForeground(speler2);break;
case 3: lblSpeler.setForeground(speler3);break;
case 4: lblSpeler.setForeground(speler4);break;
}
paneel.add(lblSpeler);
//lblSpeler.setVisible(true);
paneel.validate();
}
}
Zoals in de Java thread gezegd werd, wou ik proberen die JLabels enzo te vervangen door middel van een JPanel, maar ik geraak er echt niet aan uit hoe die werken.
Hoe ik denk dat het gaat:
Code:
JLabel lblPrent;
lblPrent = new JLabel(new ImageIcon("monopoly.gif"));
lblPrent.setBounds(0,0,502,508);
JPanel paneel = new JPanel(new BorderLayout());
paneel.add(lblPrent);
Wat ik alleszins vermoed is dat ik een paar dingen vergeten ben toe te voegen. Ik heb java.awt.* geïmporteerd, en denk niet dat ik nog meer nodig heb.
Mijn vraag is nu eigenlijk: hoe werkt zo'n JLabel precies? Kan iemand een voorbeeldje geven van hoe ik bijvoorbeeld een afbeelding invoeg gebruikmakend van zo'n JPanel?
Ik word niet veel wijzer van deze site, er worden teveel termen gebruikt die ik niet snap..
Dank bij voorbaat,
Fuji