View Full Version : bordi JAva
http://java.sun.com/docs/books/tutorial/uiswing/components/border.html
come faccio a fare quei bordi a onda?
mi da errore nel Icon
http://java.sun.com/docs/books/tutorial/uiswing/components/border.html
come faccio a fare quei bordi a onda?
mi da errore nel IconCioè? Continui a fare domande che si potrebbero risolvere facilmente se 1) leggessi bene e meglio la documentazione di Java e 2) spiegassi meglio il problema.
BorderFactory.createMatteBorder si aspetta 4 int e un Icon (o un Color per l'altra versione in overload). Quindi crei un ImageIcon e glielo passi. Poi il Border ottenuto (che tecnicamente è un MatteBorder ma è comunque un Border) lo passi a setBorder del tuo componente.
:O mmmm
ma e che o provato e nn funzionava tutto qui, l'inglese nn lo capisco quindi faccio un po di fatica,
cmq pensavo che le onde erano predefinite....
ciaociao
ma e che o provato e nn funzionava tutto qui, l'inglese nn lo capisco quindi faccio un po di fatica,
cmq pensavo che le onde erano predefinite....Predefinite no, devi creare tu una immagine gif/jpeg ecc... quindi caricarla e passare il Icon al metodo.
Per la questione dell'inglese ... è un altro paio di maniche, come si dice .... la documentazione tecnica migliore è solo in inglese, quindi un minimo di inglese tecnico ci vuole ... non dico che uno debba essere un provetto traduttore!
Predefinite no, devi creare tu una immagine gif/jpeg ecc... quindi caricarla e passare il Icon al metodo.
Per la questione dell'inglese ... è un altro paio di maniche, come si dice .... la documentazione tecnica migliore è solo in inglese, quindi un minimo di inglese tecnico ci vuole ... non dico che uno debba essere un provetto traduttore!
ma si quello si.... vabbe :?:
ma e che o provato e nn funzionava tutto qui, l'inglese nn lo capisco quindi faccio un po di fatica,
cmq pensavo che le onde erano predefinite....
E' tutto ok, nel senso che è normalissimo avere qualche problema ad interpretare sia la documentazione, che è uno scritto piuttosto tecnico e di non facile interpretazione, sia i cosidetti tutorial, che per ragioni di sintesi spesso presuppongono più di quanto non spieghino.
Ti incollo un esempio di "MatteBorder" che usa l'immagine allegata.
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import javax.swing.*;
import javax.swing.border.*;
public class Main {
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
start();
}
});
}
private static void start() {
URL percorsoRelativoImmagine = Main.class.getResource("/onde.png");
if(percorsoRelativoImmagine == null) {
JOptionPane.showMessageDialog(null, "Non trovo l'immagine onde.png");
} else {
creaInterfaccia(percorsoRelativoImmagine);
}
}
private static void creaInterfaccia(URL percorsoFileImmagine) {
ImageIcon immagineComeIcona = new ImageIcon(percorsoFileImmagine);
Border bordoAOnde = BorderFactory.createMatteBorder(
-1, -1, -1, -1, immagineComeIcona);
JPanel pannelloConBordo = new JPanel();
pannelloConBordo.setBorder(bordoAOnde);
Dimension dimensionePredefinitaPannello = new Dimension(200, 200);
pannelloConBordo.setPreferredSize(dimensionePredefinitaPannello);
JFrame finestra = new JFrame("MatteBorder Sample");
finestra.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
finestra.add(pannelloConBordo);
finestra.pack();
finestra.setVisible(true);
}
}
Il file "onde.png" deve essere salvato nella stessa cartella in cui si trova il file Main.class (prodotto dalla compilazione con javac del file sorgente Main.java). Se hai domande dubbi o curiosità sul codice incollato non esitare a chiedere.
Per inciso, è mia modestissima opinione che la risposta "leggi la documentazione" sia non solo inutile ma anche inelegante.
Per inciso, è mia modestissima opinione che la risposta "leggi la documentazione" sia non solo inutile ma anche inelegante.La mia risposta non voleva assolutamente "suonare" come un "leggi la documentazione e non rompere!".
Semmai era un invito a documentarsi meglio e a spiegarsi meglio .... dire solo "mi da errore nel Icon" infatti non aiuta me o altri a capire dove è realmente il problema.
Premesso questo, se la mia risposta è stata anche solamente recepita come inadatta o inelegante, chiedo naturalmente scusa.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.