Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    48

    [JAVA]JTable righe come array di Label .!?! Vorrei un' immagine in una delle cell

    Ciao ragazzi,
    avrei bisogno di poter visualizzare all' interno di alcune celle
    della mia JTable anche delle immagini, ma purtroppo nonostante
    il metodo addRow consenta di aggiungere una riga alla JTable la quale e' un Vector di Object non riesco ad utilizzare come argomento un Vector i cui elementi siano delle JLabel, all' interno della JLabel potrei infatti prevedere anche un' icona...
    Il risultato di questa operazione e' la visualizzazione all' interno delle celle di una stringa indicante la classe utilizzata....
    "swing...Jlabel.. ecc.. (qualcosa di simile ..simile)
    Beh credo che sia possibile fare una cosa del genere...
    Che so io ipotizziamo che io vogli creare una tabella le cui celle
    siano JButton... Devo poter farlo ?? o no ????!!!
    Grazie ciao!!!!!!!!!

  2. #2
    Se hai il JDK devi avere anche i sorgenti dei demo. Uno dei demo relativi allo SwingSet fa proprio quello che vuoi tu. Guarda lì.

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    48

    Io lavoro in JBuilder

    Non ho la demo di cui mi parli...
    te ne sarei infinitamente grato se potresti riportare il codice..
    Puoi ? Grazie in anticipo

  4. #4
    http://java.sun.com/docs/books/tutor...nts/table.html

    Dal tutorial di cui sopra:

    To choose the renderer that displays the cells in a column, a table first determines whether the you specified a renderer for that particular column. (We'll tell you how to specify renderers a bit later.) If you didn't, then the table invokes the table model's getColumnClass method, which gets the data type of the column's cells. Next, the table compares the column's data type with a list of data types for which cell renderers are registered. This list is initialized by the table, but you can add to it or change it. Currently, tables put the following types of data in the list:

  5. #5
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Non vorrei dire una boiata, ma leggendo in fretta questo articolo http://java.sun.com/docs/books/tutor...tml#editrender mi sembra di aver capito che se nel tuo vector inserisci degli oggetti ImageIcon (la tua immagine) la JTable di default utilizza una Jlabel centrata con l'immagine.
    Altrimenti devi implementare un CellRenderer apposito e passarlo alla JTable che lo userà per disegnare le celle di quella colonna.
    Dai un'occhiata al tutorial che ti ho indicato sopra.
    Ciao
    ghinz

  6. #6
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    Ecco appunto

    Dwenegar mi ha preceduto

    :gren: :gren:
    ghinz

  7. #7
    1 ) Il tutorial è lo stesso. Non ti sei nemmeno la briga di leggere quello che avevo scritto io.

    2) Dove stà il problema ? le ImageIcon vengono renderizzate utilizzando una JLabel. Non vedo problemi.

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    48
    Dov'e' il problema ???


    String[] colonna={"NomeCol_Nodo_Nome","NomeCol_Nodo_Nome2"} ;

    Vector colonne=new Vector(Arrays.asList(colonna));
    Vector data=new Vector();

    DTM2=new DefaultTableModel(data,colonne);
    descrTable.setModel(DTM2);

    //JLabel prova=new JLabel("Prova"); Cosi' non funziona mi da una
    // il percorso dell'oggetto
    // nel campo

    String prova=new String("Prova");

    // con l'oggetto String tutto ok...

    Vector VettoreProva=new Vector();
    VettoreProva.addElement(prova);
    DTM2.addRow(VettoreProva);


    beh non capisco neanche io dove sia il problema....
    ?????

  9. #9
    Utente di HTML.it L'avatar di ghinz
    Registrato dal
    May 2001
    Messaggi
    211
    1 ) Il tutorial è lo stesso. Non ti sei nemmeno la briga di leggere quello che avevo scritto io.
    Ma grazie, lo so bene che il tutorial è lo stesso, se dai un'occhiata all'ora del post vedrai che ho postato tre minuti dopo di te. Stavamo scrivendo la stessa cosa, solo che tu l'hai postata mentre io la stavo ancora scrivendo.
    Saluti
    ghinz

  10. #10
    x ghINZ: scusa colpa mia. Pietra sopra ?

    x l'errore: non ci sono errori è giusto...il metodo toString() della classe JLabel fa il suo dovere. Il problema è che tu stai cercando di far fare il rendering di una JLabel dentro una cella di una JTable. Tra i renderer registrati non vi è quello per la JLabel che viene trattata come Object su cui viene invocato il metodo toString(). Se vuoi visualizzare string usa oggetti String. Se vuoi visualizzare immagini usa oggetto ImageIcon.

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.