Oppure

Loading
22/11/10 8:53
killer
salve a tutti... vorrei capire un piccolo particolare.. :)
è possibile inserire un cursore testuale(quindi in textfield) predefinito 'animato' ? es:mentre viene premuto un tasto dalla tastiera vorrei richiamare l'immagine gif con i pallini animati dando l'effetto di movimento e al released , impostare quello normale di default !! fatemi sapere presto :)
Ultima modifica effettuata da killer 22/11/10 8:54
aaa
22/11/10 13:34
bububs
Certo ke si può (premetto ke non l'ho provato):
al pressed del mouse fai così:
ImageIcon tmp = new ImageIcon("sole.gif");
				Image img = tmp.getImage();
                                Toolkit t = Toolkit.getDefaultToolkit();
				Cursor cursore = t.createCustomCursor(img,new Point(0,0),"cur");
				jtextfield.setCursor( cursore );

Invece al released fai così:
Cursor normalCursor = new Cursor(Cursor.DEFAULT_CURSOR);
jtextfield.setCursor(normalCursor);

Qui la documentazione ufficiale:
download.oracle.com/javase/1.4.2/docs/api/java/awt/…
aaa
22/11/10 20:33
killer
grazie...pero...io avrei gia provato in questa maniera... ma ho notato che mi cambia il cursore al puntatore del mouse..e non a quello testuale(della text field) come mai !? eppure ho fatto textfield.setCursor(cursor))));
e non this.setCursor(cursor); mmm
ce qualcosa che non va...

ps: come mai setti il new Point() a (0,0) ? io vorrei che l'animazione si muovesse man mano che si sposta il cursore testuale per digitare i caratteri.... tipo passando come punto x,y la posizione attuale del carattere....almeno credo..fammi sapere :)
Ultima modifica effettuata da killer 22/11/10 20:37
aaa
22/11/10 20:59
killer
ehm..appena provato non funziona...la gif come se non la vede..pensa che entra in tilt tutto il programma e si blocca... :( come mai ? forse le gif non le imposta come cursore ? servono altre estensioni ovviamente di tipo animazioni?

Code:
Image img = Toolkit.getDefaultToolkit().getImage(getClass().getResource("/img/points.gif";));
Cursor cursor = Toolkit.getDefaultToolkit().createCustomCursor(img, new Point(0, 0),"points";);
jTextFieldID.setCursor(cursor);


cosa ce di sbagliato ? ho prelevto la gif con la Toolkit direttamente invece che ImageIcon.... potrebbe essere questo il problema ? se si ..quali differenze vi sono ?
Ultima modifica effettuata da killer 22/11/10 21:04
aaa
23/11/10 0:13
paoloricciuti
Facendo jTextField.setCursor(); non fai altro che impostare che al passaggio del mouse sopra il textField il cursore debba cambiare da quello di default a quello impostato da te. Quello di cui tu credo stia parlando sia chiama caret e non credo ci siano possibilità di cambiarlo, potresti fare una serie di prove con i jFormattedField, che può disegnare una immagine assieme al testo ma risulterebbe abbastanza complicato.

EDIT: mi sbagliavo, c'è la possibilità di cambiarlo. C'è il metodo setCaret che prende in input un caret. Quello che dovresti fare è una classe ad Hoc che implementi Caret. Il problrema è che dovresti metterti ad implementare tutti i metodi.

RE-EDIT: ora che ho visto puoi anche estendere alcune classi come ad esempio BasicCaret in modo che ti trovi già implementati alcuni metodi e fare solo l'override di paint. Poi dove disegnare la tua immagine te lo devi trovare tu, io ho fatto un po di prove e per il momento non sono riuscito. Ora però non mi va di continuare a provare quindi delego a te questo compito.
Ultima modifica effettuata da paoloricciuti 23/11/10 0:38
aaa
23/11/10 13:50
killer
allora quindi....dovrei creare una MyClass implements Caret ? pero .. mi serve semplicemente acquisire una immagine gif e mostrarla nel mentre scorre il caret(in quella posizione) al mouse pressed ...e al rilascio reimpostarlo di default (testuale)...
aaa