PDA

View Full Version : [Java] Immagini!


jj.69kt
26-05-2008, 19:42
Mi chiedevo.. Se in java fosse possibile "mappare" un'immagine (tipo jpg o altro) rendendola interattiva...
Nn mi spiego molto bene.. esempio..
Io ho un immagine e in un rettangolo di coordinate a=(10, 20), b=(10, 15) di lati 10pix, 20pix vorrei poter cliccare un finto pulsante disegnato sul jpg

Oppure vorrei avere una casella di testo dalle coordinate 50, 55...

E' possibile una cosa del genere?

Un'altra cosa, è possibile bloccare il ridimensionamento di un frame o un panel?

jj.69kt
26-05-2008, 19:44
Dimenticavo... E' inoltre possibile in caso utilizzare un'immagine (psd o altro formati simile) contenente dei livelli e sfruttare i livelli stessi dell'immagine come elementi oppure no?

andbin
26-05-2008, 21:08
Se in java fosse possibile "mappare" un'immagine (tipo jpg o altro) rendendola interattiva...
Io ho un immagine e in un rettangolo di coordinate a=(10, 20), b=(10, 15) di lati 10pix, 20pix vorrei poter cliccare un finto pulsante disegnato sul jpgPer farlo, tecnicamente, è ovviamente possibile. Nel framework di Java SE però non c'è nulla del genere. Dovresti implementarlo tu: disegni la immagine su un tuo componente (che estende es. JPanel), ti tieni da qualche parte una lista delle aree "hot" e tramite un MouseListener quando ricevi un click vai a vedere a quale area appartiene e ... fai quello che vuoi.
Insomma ... o "fai da te" o cerchi in giro qualche libreria, se esiste, che fa questo.

Un'altra cosa, è possibile bloccare il ridimensionamento di un frame o un panel?Per JFrame: setResizable(false). Per JPanel ... dipende. Perché un JPanel sta dentro un altro contenitore e se quest'ultimo usa un layout manager, è lui a stabilire posizioni/dimensioni dei componenti. Se vuoi togliere il layout manager e posizionare/dimensionare tu i componenti, è un altro conto.

Dimenticavo... E' inoltre possibile in caso utilizzare un'immagine (psd o altro formati simile) contenente dei livelli e sfruttare i livelli stessi dell'immagine come elementi oppure no?File PSD e simili non sono supportati nel framework di Java SE. Se trovi librerie apposite per gestire tipi di immagini particolari (es. appunto PSD) è un altro conto.

banryu79
27-05-2008, 08:41
E questo che vuole??? :mbe:

jj.69kt
27-05-2008, 10:23
[...]Dovresti implementarlo tu: disegni la immagine su un tuo componente (che estende es. JPanel), ti tieni da qualche parte una lista delle aree "hot" e tramite un MouseListener quando ricevi un click vai a vedere a quale area appartiene e ... [...]


Mmh... Impazzisco facendo così.. :D Visto che sono alle prima armi...


Per JFrame: setResizable(false).
Per JPanel ... dipende. Perché un JPanel sta dentro un altro contenitore e se quest'ultimo usa un layout manager, è lui a stabilire posizioni/dimensioni dei componenti. Se vuoi togliere il layout manager e posizionare/dimensionare tu i componenti, è un altro conto.


Hem.. Si, sono andato in confuzio.. :D
JFrame può essere un contenitore di JPanel giusto? (O era il contrario.. :P )
Sto iniziando a impazzire...
Ti spiego..
Quello di cui necessito è una finestra in cui devo posizionare degli oggetti e dei menu.. Cosa molto terra terra..
Ma d'altronde è il mio primo progetto "serio" con ui mi devo cimentare nell'interfaccia grafica.. :P
E mi son trovato un muro difronte.. XD
COOOOOOMUNQUE...
Io vorrei far si ce non sia resizable per poter dare le posizioni degli oggetti senza aver paura che in un resize mi si sballano in giro... ç_ç
Non so se mi spiego... E siccome ci sono anhe dlle cose che si muovono per la schermata.. La soluzione "no resize" mi sembrava interessante.. No?


File PSD e simili non sono supportati nel framework di Java SE. Se trovi librerie apposite per gestire tipi di immagini particolari (es. appunto PSD) è un altro conto.

Mhm, ok, lascio perdere senza impazzire.. :D Grazie cmq.. :P