Visualizzazione dei risultati da 1 a 7 su 7

Discussione: mousemove e jlabel

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636

    mousemove e jlabel

    Ciao a tutti

    Ho fatto questa cosa per una jlabel

    private void jLabel1MouseMoved(java.awt.event.MouseEvent evt) {

    jLabel1.setCursor(Cursor.getPredefinedCursor(Curso r.HAND_CURSOR));
    jLabel1.setToolTipText("Cliccca per modificare");
    jLabel1.setForeground(Color.BLUE);
    }

    Quindi quando il cursore passa sulla jlabel...il cursore cambia forma...esce il tooltiptext ..e il testo diventa blu.

    Il problema è che quando sposto il cursore fuori dalla jlabel, la forma del curosre torna a come era prima..il tooltiptext scompare...ma il testo rimane blu.

    Come posso fare a far tornare il colore del testo a quello originale quando il mouse non è piu sulla jlabel ?

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: mousemove e jlabel

    Originariamente inviato da jurij7
    ma il testo rimane blu.
    Beh ... ovvio!
    Tutte le varie proprietà che imposti con setXXX sono "permanenti" nel senso che settano dei campi interni al componente. Per cursor e tooltip è chiaro che però si "manifestano" solo quando l'utente interagisce con il componente usando il mouse. Per il colori, o ad esempio il font o i bordi, invece sono sempre visibili perché sono caratteristiche della presentazione visiva del componente.

    Quindi se cursore e tooltip devono essere fissi non è obbligatorio impostarli a seguito di un evento .... basta impostarli 1 volta sola nel momento della creazione della interfaccia utente.

    Per realizzare un effetto di "hover" facendo cambiare il colore, basta impostare un certo colore in mouseEntered() e impostarne un'altro in mouseExited(). Semplice, no?
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    Forse non mi sono spiegato..cioè :

    jLabel1.setCursor(Cursor.getPredefinedCursor(Curso r.HAND_CURSOR));
    jLabel1.setToolTipText("Cliccca per modificare");

    queste vanno benissimo, perchè quando il mouse non è iu sulla label..tornano normali.

    Il problema è questo:

    jLabel1.setForeground(Color.BLUE);

    perchè una volta passato con il cursore sulla label..cambia in blu..ma se mi sposto dalla label...rimane sempre blu.

    Cmq provo la tua soluzione enter e exit

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    ti sei spiegato benissimo. solo che non hai letto altrettanto bene la spiegazione di andbin. Fai finta che tooltip e cursor siano già inseriti in un eventuale mouseEntered/Exited dell'elemento a cui li stai assegnando. Tutte le altre cose no, bisogna appiccicargliele a mano e descriverne il comportamento ai diversi eventi del mouse.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    ok benissimo...fatto

    Ma è possibile usare colori personalizzati ?

    cioè io ora ho

    jLabel7.setForeground(Color.black);

    posso definire il colore come in html?

    cosa dovrei fare ...(Color.-----); ?

    E' possibile definirlo in RGB ?

  6. #6
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da jurij7
    Ma è possibile usare colori personalizzati ?

    cosa dovrei fare ...(Color.-----); ?
    Forse guardando la documentazione di java.awt.Color??
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    636
    ok

    final Color grigio = new Color(128,128,128);
    jTextArea2.setBackground(grigio);

    Grazie a tutti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.