CiAo :-)
--- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
UIN: 50254876
http://www.danteworkshop.f2s.com
--- --- --- --- --- --- --- --- --- --- --- --- --- --- ---
per esempio, per selezionarne uno a caso:
indice = Int((LV.ListItems.Count * Rnd) + 1)
Set LV.SelectedItem = LV.ListItems(indice)
per "indice" guarda l'help del listview
ciao, a.
CiAo :-)
"pal" <p...@zelig.it> ha scritto nel messaggio
news:92gjrj$6ssdl$1...@ID-51318.news.dfncis.de...
"Luca D." <dan...@galactica.it> ha scritto nel messaggio
news:978053916.984637@NNTPCache01...
pippo pluto paperino
minnie paperone gamba di legno
così ti becchi l' indice della riga selezionata:
LsvIndice = listview.SelectedItem.Index
Se ad esempio clicchi su pippo, Lsvindice vale 1.
Così invece ti becchi quello che c'è nelle colonne della riga
selezionata:
nome = listview.SelectedItem.Text
cognome = lsvMp3.SelectedItem.ListSubItems.Item(1).Text
soprannome = lsvMp3.SelectedItem.ListSubItems.Item(2).Text
Esempio, se clicchi su minnie:
none = minnie
cognome = paperone
soprannome = gamba di legno
Saluti...
avrei anche qualcosina da ridire sulla tua distribuzione di nome cognome
soprannome, se i dati sono quelli delle tue prime righe, ma non ho il tempo.
comunque a occhio pippo ecc sono sei items (nomi), e un paio di righe (per
combaciare col codice sotto) dovrebbere essere:
paolino paperino sfortunato
paperon depaperonis miliardario
ciao, a.
"SKUNK" <sku...@libero.it> ha scritto
>controlla le proprieta'. ci deve essere qc tipo
>-- selectfullrow
>-- lascia selezionato quando perde il fuoco
Ma sei sicuro che sia questa la proprietà giusta? Io neanche la
trovo...
>se hai vb6. con vb5 dovrei cercare il codice.
Veniamo a noi :)) Io ho vb6, come si fa a:
1) selezionare l' intera riga di una listview quando faccio click su
un suo elemento? Io ho notato un paio di cose, faccio un disegnino
perchè segna disegnetti non so psiegarmi :))
Considera queste come le colonne della mia listview
pippo pluto paperino
minnie paperone gamba di legno
Se clicco su minnie mi evidenzia nel rettangolino blu solo la parola
minnie, per far si che si tiri una riga o simile, che prenda anche
paperone e gamba di legno, come si fa?
2) Perchè se clicco su minnie, mi evidenzia questa nel rettangolino
blu e l' indice della listview vale 2 (giusto), mentre se cliccco su
paperone mi seleziona (o gamba di legno) pippo e l' indice di
conseguenza vale 1? Ma una listview, considera solo il primo item
selezionabile di una colonna? (in questo caso gli unici selezionabili
sarebbero pippo o minnie?!?!) Se io seleziono il secondo (paperone) e
non il primo item (minnie) la listview mi prende sempre il primo della
prima riga? (pippo)
3) Cliccando su minnie, le fa il rettangolino blu intorno, se ci
riclicco il rettangolimo diventa bianco con il cursore che lampeggia e
mi darebbe la possibilità di cambiare quello che cè scritto dentro. A
parte che se anche cambio il testo dell' item non lo salva, quindi non
serve a niente, e poi, se io non voglio che qualuno cambi il contenuto
delle colonne di una listview, come faccio? Non esiste una proprieà
tipo locked delle textbox?
Saluti...
PS: passato bene il natale? :))
Ho visto quando ha risposto al tuo post, infatti se vedi, adesso mi
sono messo anche io trà quelli che fanno le domande :))
Selezionare via codice...io una cosa del genere forse l' ho fatta, ma
aspetto che qualcuno gli risponde prima di parlare...
>avrei anche qualcosina da ridire sulla tua distribuzione di nome cognome
>soprannome, se i dati sono quelli delle tue prime righe, ma non ho il tempo.
Ho promesso che non mi immischierò più in discussioni lunghe 90 post
per cose del genere :))
>comunque a occhio pippo ecc sono sei items (nomi), e un paio di righe (per
>combaciare col codice sotto) dovrebbere essere:
> paolino paperino sfortunato
> paperon depaperonis miliardario
Spetta fammi capire, quello che non ti convince è il codice che ho
scritto, o il fatto che ho messo soprannome = gamba di legno? Se
questo è l' errore...bhè, mi serviva un altro campo testuale dopo nome
e cognome e c' ho messo soprannome, è il primo che mi è venuto in
mente :) Era solo un esempio, non credo che questa sia una cosa
importante ai fini di un esempietto come quello che ho postato io, se
invece il codice era sbagliato allora è un altro discorso...bhè, quale
delle due? Stangato ancora una volta dalla onnipresente precisione di
Zio Pall oppure ho scritto una boiata io? :))
PS: ora ti prendi anche i meriti del mio sapere!?! Tzè, incredibile...
:)) Dopo che ho risposto ad un post su ADO, Della Bianca ha replicato
in questo modo: (parole sue!!!)
> Ehi Pal, hai visto il nipotino? l'hai tirato su proprio bene ....
> E' quasi arrivato al livello in cui pochi riusciranno ad aiutarlo ...
> Me sa che avrete dei trietti, *Alessandro*, Jimi, SHUNK.
Hehehehe, premesso che per arrivare ai livello a cui si riferiva lui,
purtroppo, mi manca ancora qualche pelo dietro la schiena e qualche
baffo lungo e setoso :))) Se girando in strada vedrai ragazze
sconvolgersi al tuo passaggio, lanciarti reggiseni o biancheria...è
perchè si è sparsa questa voce che sono una tua creazione :)))
Ma infondo...sei l' unico che mi ha sempre dato fiducia... :°)) Zio
Pal... HUAAAA HUUUAAAA :°°°))) Piango di gioia :))))) Hihihihihihi
Saluti!!!!
invece lo e', e parecchio, specie se stai aiutando qualcuno.
se dico che i campi di un lvAutomobili sono marca e modello,
non posso fare un esempio con:
fiat panda
alfa lancia
toyota corolla
ford opel
seno' chi legge non ci capisce piu' una mazza
una volta si diceva: non puoi sommare mele e pere...
quanto alle mie creazioni, mi chiameranno
frankenstein-si-dice-frankenstijn ?
:)
ciao, a.
ps -- all'altro post rispondo oggi che ora sono di corsa.
mi fido dei tuoi refusi e spero di non passare da zio a cia o fbi (c'e' gia
fibia :)
> >controlla le proprieta'. ci deve essere qc tipo
> >-- selectfullrow
> >-- lascia selezionato quando perde il fuoco
> Ma sei sicuro che sia questa la proprietà giusta? Io neanche la
> trovo...
si'. con vb6 il lv ha una proprieta' fullrowselect, che in visualizzazione
dettagli evidenzia l'intera riga.
> >se hai vb6. con vb5 dovrei cercare il codice.
trovato:
'declare:
'listview full line
Public Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, _
ByVal Msg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long) As Long
Public Const LVM_FIRST = &H1000
Public Const LVM_SETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 54
Public Const LVM_GETEXTENDEDLISTVIEWSTYLE = LVM_FIRST + 55
Public Const LVS_EX_FULLROWSELECT = &H20
'form_load: qui il lv si chiama lvFL
lReturn = SendMessageLong(lvFL.hwnd, _
LVM_SETEXTENDEDLISTVIEWSTYLE, _
LVS_EX_FULLROWSELECT, True)
> Veniamo a noi :)) Io ho vb6, come si fa a:
>
> 1) selezionare l' intera riga di una listview quando faccio click su
> un suo elemento? Io ho notato un paio di cose, faccio un disegnino
> perchè segna disegnetti non so psiegarmi :))
gia'. provo a cercarti una tastiera con disegnetti cosi' forse diventi anche
un bravo dattilografo :)))
> Considera queste come le colonne della mia listview
>
> pippo pluto paperino
> minnie paperone gamba di legno
>
> Se clicco su minnie mi evidenzia nel rettangolino blu solo la parola
> minnie, per far si che si tiri una riga o simile, che prenda anche
> paperone e gamba di legno, come si fa?
vedi sopra
> 2) Perchè se clicco su minnie, mi evidenzia questa nel rettangolino
> blu e l' indice della listview vale 2 (giusto), mentre se cliccco su
> paperone mi seleziona (o gamba di legno) pippo e l' indice di
> conseguenza vale 1? Ma una listview, considera solo il primo item
> selezionabile di una colonna? (in questo caso gli unici selezionabili
> sarebbero pippo o minnie?!?!) Se io seleziono il secondo (paperone) e
> non il primo item (minnie) la listview mi prende sempre il primo della
> prima riga? (pippo)
oddio, ci ho capito poco. te lo dicevo che gli esempi devono essere chiari
:)
se tu hai messo il lv con
view = 3 - lvwReport
doresti avere qc come
nome eta tipo
mickey 35 buono
minnie 25 buono
gamba 40 cattivo
pippo indef. buono
a questo punto se clicchi su un subitem come 35 o buono, e _se_ hai messo
fullrowselect, ti _deve_ evidenziare la riga di minnie.
dal tuo esempio con tutti nomi di personaggi sembra piuttosto un lv in
modalita' icone,
tieni sempre presente gestione risorse, che e' un lv che sta sempre davanti
agli occhi.
>
> 3) Cliccando su minnie, le fa il rettangolino blu intorno, se ci
> riclicco il rettangolimo diventa bianco con il cursore che lampeggia e
> mi darebbe la possibilità di cambiare quello che cè scritto dentro. A
> parte che se anche cambio il testo dell' item non lo salva, quindi non
> serve a niente, e poi, se io non voglio che qualuno cambi il contenuto
> delle colonne di una listview, come faccio? Non esiste una proprieà
> tipo locked delle textbox?
si':
Private Sub LV_BeforeLabelEdit(Cancel As Integer)
Cancel = True
End Sub
> Saluti...
>
> PS: passato bene il natale? :))
si', grazie. ma non ho dormito abbastanza :))
ciao, a.
bhà...secondo me non è così importante, anche perchè io ho detto che
nella mia lview ci sono tre campi, poi posso chiamarli come voglio,
non è che cambia qualcosa in base a che nome gli do, io ho postato un
codice funzionate :)) a prescinedere dal fatto che per me gamba di
legno è un soprannome :))
>una volta si diceva: non puoi sommare mele e pere...
Infatti non ho sommato niete, ho detto..."ho tre gruppi: delle mele,
delle pere e un copertone di una macchina..." saranno anche diversi,
ma sempre tre sono :)) Gamba di legno potrà anche non essere un
soprannome, ma la discussione del post non era nata sul che nomi
mettere alle intestazioni delle colomme doi una lview, e di
conseguenza se quello che ci va sotto è attinente.
>quanto alle mie creazioni, mi chiameranno
>frankenstein-si-dice-frankenstijn ?
>:)
Hehehehe, parlate bene o parlate male, ma l' importante è che ne
parliate :)))
>ps -- all'altro post rispondo oggi che ora sono di corsa.
Si si grazie, che quello mi interessa.
No no, stai tranquillo :)
>si'. con vb6 il lv ha una proprieta' fullrowselect, che in visualizzazione
>dettagli evidenzia l'intera riga.
Hai ragione, c'č!!! L' ho tovata e funziona pure!! :))
>gia'. provo a cercarti una tastiera con disegnetti cosi' forse diventi anche
>un bravo dattilografo :)))
Ma piů che altro non perdo tempo a doverli fare io :)
>vedi sopra
Punto 1 risolto...
>oddio, ci ho capito poco. te lo dicevo che gli esempi devono essere chiari
>:)
Per me va bene, tieniamo il tuo esempio.
>se tu hai messo il lv con
>view = 3 - lvwReport
>doresti avere qc come
>nome eta tipo
>mickey 35 buono
>minnie 25 buono
>gamba 40 cattivo
>pippo indef. buono
>a questo punto se clicchi su un subitem come 35 o buono, e _se_ hai messo
>fullrowselect, ti _deve_ evidenziare la riga di minnie.
E no!! Dovrebbe e non ti deve, visto che non lo fa :) Ti spiego meglio
(ci provo)...ora riesco a selezionare un intera riga, questo funziona,
perň se il primo click sulla listview, io lo faccio su 40 o cattivo
piuttosto che su gamba, nella list mi si seleziona automaticamente
mickey e non l' itera rigadi gamba; prova se hai tempo. Adesso me lo
fa solo per il primo click, mentre prima ogni volta che cliccavo su
qualcosa che non era il nome (cosniderando la tua tabellina); perchč
fa cosě?
>dal tuo esempio con tutti nomi di personaggi sembra piuttosto un lv in
>modalita' icone,
No che icone, non ci sono icone.
Punto 3 risolto!!!
Saluti...
>si', grazie. ma non ho dormito abbastanza :))
e dillo a me!!
Set ListView1.SelectedItem = ListView1.ListItems(1)
Infatti è come tu hai detto, ma non mi seleziona neinte :((
Si, c'è FullRowSelect che come hai già chiarito in un'altro post ti
seleziona l'intera riga quando tu selezioni un elemento in una colonna, però
con quella non seleziono un elemento...
> -- lascia selezionato quando perde il fuoco
Hmmm non penso sia questa, cmq non l'ho trovata.
> se hai vb6. con vb5 dovrei cercare il codice.
Ho vb6 :)
CiAo :-)
"Luca D." <dan...@galactica.it> ha scritto.
strano. faccio un esempio con un lv che ho sotto gli occhi:
elenco di file.
organizzazione tipo gestione risorse in visual dettagli.
con la griglia mostrata, sembra una tabella.
fullrowselect o comesichiama attivato.
se clicco sulla data di un file, mi evidenzia l'intera riga e mi restituisce
l'_indice_ dell'_item_ selezionato. _non_ mi dice su quale subitem ho fatto
clic.
se quello che vi interessa e' sapere quale subitem, c'e' stato ca. 10 gg fa
un interessante thread mi sembra partito da marioh in cui si dibatteva l'uso
dell'api a questo scopo. se fate in oe
^-maiusc-f ---> "listview" dovreste trovarlo.
ciao, a.
CiAo :-)
l'avevo capito, e la procedura e' esattamente quella che ti abbiamo detto io
e msdn :)
prova qualcosa tipo (scrivo al volo in oe, quindi controlla)
sub command1_click
dim j as integer
j = lv.selecteditem.index
j = j+1
' non mi ricordo mai se ci va .count o .count-1 :
if j <= lv.listitems.count then _
ListView1.SelectedItem = ListView1.ListItems(j)
end sub
se tieni evidenziata l'intera riga,
dovresti vedere l'evidenziazione scendere man mano che premi il cmd.
ciao, a.
CiAo :-)