Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883

    (java) Cambiare il colore di background di una jlabel

    Ho il seguente codice

    codice:
    package dialog;
    
    import java.awt.Color;
    
    import javax.swing.JDialog;
    import javax.swing.JLabel;
    import javax.swing.UIManager;
    
    public class SimpleDialog {
    
    	public SimpleDialog() {
    		
    		JDialog dialog = new JDialog();
    		dialog.getContentPane().add(new JLabel("Prova"));
    		dialog.setTitle("Simple dialog");
    		dialog.setSize(400, 250);
    		dialog.setVisible(true);
    	}
    
    	public static void main(String[] args) {
    		UIManager.put("Label.background", Color.ORANGE);
    		UIManager.put("Label.foreground", Color.WHITE);
    		new SimpleDialog();
    	}
    }
    come mai mi mette correttamente la scritta "Prova" in bianco ma non mi cambia il colore di background della jlabel in arancione?

  2. #2
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Prima di:

    dialog.getContentPane().add(new JLabel("Prova"));

    prova a fare:

    Color c=new Color(vedi qui );
    dialog.setBackgroundColor(c);
    ...

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    Ho provato come dici ma il background non diventa arancione, rimane grigio

    codice:
    package dialog;
    
    import java.awt.Color;
    
    import javax.swing.JDialog;
    import javax.swing.JLabel;
    import javax.swing.UIManager;
    
    public class SimpleDialog {
    
    	public SimpleDialog() {
    		JLabel label = new JLabel("Prova");
    		label.setBackground(Color.ORANGE); 
    		
    		JDialog dialog = new JDialog();
    		dialog.setBackground(Color.ORANGE); 
    		dialog.getContentPane().add(label);
    		dialog.setTitle("Simple dialog");
    		dialog.setSize(400, 250);
    		dialog.setVisible(true);
    	}
    
    	public static void main(String[] args) {
    		UIManager.put("Label.background", Color.ORANGE);
    		UIManager.put("Label.foreground", Color.WHITE);
    		new SimpleDialog();
    	}
    }

  4. #4
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Provo a controllare

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    il metodo setBackgroundColor non esiste per un componente JLabel con jvm ver 1.4.2.
    eiste il metodo setBackground che imposta il colore di background

  6. #6
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Infatti me ne sono accorto proprio adesso, scusami

  7. #7
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Non conosco la classe UIManager (penso che dovrebbe fare da JPanel cmq).
    Forse nel metodo put dovresti aggiungere il componente JDialog che ti fa visualizzare il messaggio
    con:
    UIManager.put("id", dialog)

  8. #8
    Utente di HTML.it L'avatar di bobc
    Registrato dal
    Feb 2004
    Messaggi
    245
    Togliendo gli altri due put ovviamente

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,317
    Il problema stà nel fatto che di default le JLabel sono impostate come "trasparenti"; bisogna, quindi, settarle come opache:
    codice:
    JLabel lbl = new JLabel("Mia label");
    lbl.setBackground( Color.red );
    lbl.setOpaque( true );
    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2002
    Messaggi
    883
    LeleFT sei sempre il migliore

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.