Originariamente inviato da Azzurra85
Questo è il mio problema: io ho un JFrame principale e vorrei visualizzare (disegnare) all'interno di un JPanel del JFrame dei miei JComponent formati da ImageIcon.
Ha a che fare con quella questione del "pedice" che dicevi in un altra discussione??? (che già lì non era chiaro il tuo dubbio/problema).
Originariamente inviato da Azzurra85
Ora non basta aggiungere semplicemente questi JComponent da me realizzati al pannello affinchè vengano visualizzati al suo interno, ma cosa posso fare per visualizzarli????
In che senso "non basta aggiungere"??? Se hai fatto un "tuo" componente che si disegna da sé (che funzioni correttamente .. è chiaro), basta aggiungerlo ad un "container". Dove sarà messo e con quale dimensione dipende se hai usato o no un layout manager e se sì quale.
Originariamente inviato da Azzurra85
Devo inserire le ImageIcon di ogni componente all'interno di JButton e poi aggiungerli al JPanel di destinazione oppure devo utilizzare il metodo paint(Graphics) per disegnare immagini (ma non so come fare a sapere il punto preciso di dove devono essere collocate le immagini) oppure c'è un altro modo più elegante???
Vuoi fare un semplice componente che deriva da JComponent e che disegna un ImageIcon?
La cosa più semplice e minimale che si possa fare è:
codice:
class ImageIconComponent extends JComponent {
private ImageIcon imageIcon;
public ImageIconComponent(ImageIcon imageIcon) {
this.imageIcon = imageIcon;
setPreferredSize(new Dimension(imageIcon.getIconWidth(), imageIcon.getIconHeight()));
}
protected void paintComponent(Graphics g) {
super.paintComponent(g);
imageIcon.paintIcon(this, g, 0, 0);
}
}