realbasic-nug.it
[Top] [All Lists]

Re: Listbox e Immagini

To: REALbasic NUG Italian <realbasic-nug dot it at lists dot realsoftware dot com>
Subject: Re: Listbox e Immagini
From: Giulio Mastrosanti <giulio at cantoberon dot it>
Date: Mon, 3 Dec 2007 18:54:03 +0100
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot it at lists dot realsoftware dot com
References: <97E7D70B-AC8E-44AD-B7DC-1964FBC177F0 at tiscali dot it> <FDCF3DF0-3A3C-42AD-B7DA-EED9FD7B6D13 at cantoberon dot it> <C3D33FC9-6445-417F-8A74-4B56ED236F6A at tiscali dot it>
Non credo di aver capito la domanda...

l'evento ci pensa il sistema a generarlo, ogni volta che serva ridisegnare la cella, poi sei tu che gestisci quale immagine caricare a secondo del valore di row ( quale riga si sta disegnando )

ad esempio puoi avere un array di immagini con l'ndice che coincide con quello delle righe di cella. e usare quello per impostare l'immagine,

oppure l'immagine potresti inserirla nel celltag della cella stessa ( che e' un variant e quindi accetta anche oggetti ), e poi usare quello per ridisegnare l'immagine nella cella, quindi quando aggiungi la riga fai:

lista.addrow " "
lista.celltag( lista.lastindex,0) = immagine

e quindi poi  nell'evento CellBackgroundPaint fai qualcosa tipo:

Graphics.DrawPicture me.celltag(row,column), X, Y, [DestWidth], [DestHeight], [SourceX], [SourceY], [SourceWidth], [SourceHeight]

spero ora sia piu' chiaro

    Giulio


Il giorno 03/dic/07, alle ore 18:30, Giovanni Gualeni ha scritto:

Il giorno 03/dic/07, alle ore 17:44, Giulio Mastrosanti ha scritto:

nell'evento CellBackgroundPaint( g as Graphics, Row as Integer, Column as Integer ) usi l'oggetto graphics g passato dall'evento stesso e ci disegni dentro l'immagine

Graphics.DrawPicture immagine, X, Y, [DestWidth], [DestHeight], [SourceX], [SourceY], [SourceWidth], [SourceHeight]

poi ritorni true per indicare che stai gestendo tu il disegno della cella ( ad esempio sulle righe selezionate devi gestire anche il cambio di colore di sfondo )

OK, l'immagine e' centrata!
Ma l'ottusita' che mi pervade in questi giorni (e non solo in questi) non mi fa capire bene come funzioni il tutto. Con una immagine letta da fuori funziona ma come faccio ad inserire piu' immagini nella listbox e far si che questo evento si attivi per ognuna di esse?

Giovanni



<Prev in Thread] Current Thread [Next in Thread>