bububs (Normal User)
Expert
Messaggi: 253
Iscritto: 11/03/2010
|
Ciao a tutti vorrei sapere se esiste un modo per colorare con un GradientPaint il testo di una Jlabel. Confido in voi
|
|
Bonny (Member)
Expert
Messaggi: 437
Iscritto: 24/04/2009
|
Che io sappia, dovresti implementare il codice del metodo paint() relativo al JLabel.
Codice sorgente - presumibilmente Java |
public MyLabel(){} //disegno il testo con gradiente } }
|
|
|
bububs (Normal User)
Expert
Messaggi: 253
Iscritto: 11/03/2010
|
Innanzitutto ciao e grazie per la risposta
ti faccio vedere cosa ho fatto però non mi da nessun testo e nessun colore
Codice sorgente - presumibilmente Java |
package shapedraw; import java.awt.Color; import java.awt.GradientPaint; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import javax.swing.JLabel; /** * * @author Bububs */ public class MyJLabel extends JLabel { private Color startColor = new Color(192, 192, 192 ); super(""); setText(""); testo = text; startColor = Utility.schiarisciColore(coloreBase); endColor = Utility.scurisciColore(coloreBase); setForeground (Color. WHITE); setHorizontalAlignment (JLabel. CENTER); setFocusable(false); setOpaque(true); } public void paintComponent (Graphics g ) { GP = new GradientPaint(0, 0, startColor, 0, getHeight (), endColor, true); g2d.setPaint(GP); g2d.drawString(testo, 0, 0); g2d.dispose(); super.paintComponent(g); } }
|
come mai non esce ciò che mi aspetto?
Ultima modifica effettuata da bububs il 11/10/2012 alle 22:58 |
|
bububs (Normal User)
Expert
Messaggi: 253
Iscritto: 11/03/2010
|
Risolto
bastava modificare il parametro y del drawString a 20 perchè la scritta c'era ma era molto sopra
|
|
Bonny (Member)
Expert
Messaggi: 437
Iscritto: 24/04/2009
|
Bravo, ricordati che la coordinata (0,0) è nell'angolo in alto a sinistra dell'area di disegno!
Ciao alla prossima
|
|