Discussione:
Listview e scrollbar verticale
(troppo vecchio per rispondere)
MultiTaskinG
2006-05-31 15:36:39 UTC
Permalink
salve a tutti !

ho un piccolo form con una listview che si ridimensiona automaticamente
alle dimensioni del suddetto form.

non riesco però a capire come eliminare la scrollbar orizzontale e
lasciare solo quella verticale quando avviene un resize.

io vorrei che gli elementi nella listview rimanessero sempre nella
stessa colonna e se l'altezza del form è insufficiente vorrei avere una
scroolbar verticale. ( e non orizzontale)


attualmente la proprietà View della listview è impostata su : list


suggerimenti ?

Grazie
Rafunk
2006-05-31 16:27:30 UTC
Permalink
Post by MultiTaskinG
salve a tutti !
ho un piccolo form con una listview che si ridimensiona
automaticamente alle dimensioni del suddetto form.
non riesco però a capire come eliminare la scrollbar orizzontale e
lasciare solo quella verticale quando avviene un resize.
io vorrei che gli elementi nella listview rimanessero sempre nella
stessa colonna e se l'altezza del form è insufficiente vorrei avere
una scroolbar verticale. ( e non orizzontale)
attualmente la proprietà View della listview è impostata su : list
suggerimenti ?
Grazie
Per far sparire la scrollbar orizzontale occorre che la larghezza della colonna
più a destra si adegui a quella della listview.
Devi pertanto ridimensionare anche quella nell'evento Resize del form.
ListView.ColumnHeaders(N).Width = ...

Volendo c'è il modo di farla ridimensionare automaticamente alla dimensione
massima:
http://vbnet.mvps.org/code/comctl/lvcolumnautosize.htm

Bye

Raf
MultiTaskinG
2006-06-01 01:16:04 UTC
Permalink
Post by Rafunk
Per far sparire la scrollbar orizzontale occorre che la larghezza della colonna
più a destra si adegui a quella della listview.
Devi pertanto ridimensionare anche quella nell'evento Resize del form.
ListView.ColumnHeaders(N).Width = ...
non ci riesco.... forse perchè non ho oggetti columnheaders nella mia
listview ? io la riempio usando questo codice in un ciclo (ho una sola
colonna)




Dim list_item As ListItem

Set list_item = ListView1.ListItems.Add(arraylist, , list1, , list2)
ListView1.ListItems(arraylist).ForeColor = vbBlack
Post by Rafunk
Volendo c'è il modo di farla ridimensionare automaticamente alla dimensione
http://vbnet.mvps.org/code/comctl/lvcolumnautosize.htm
makkè... ho provato anche altro codice ( es:
<http://groups.google.com/group/it.comp.lang.visual-basic/browse_thread/thread/11a8489ac0dcd701/5a2c3df741f76e6b?q=ListView.ColumnHeaders&rnum=5#5a2c3df741f76e6b>

ma niente....


non pensavo fosse così difficile dirgli che ho una sola colonna e non me
la deve "spezzare" in due o tre orizzontalmente....
Voglio uno scrolling verticale !!!


oltretutto nell'evento resize del form io ci scrivo


ListView1.Width = Form1.Width - 250
ListView1.Height = Form1.Height - 1580

ma quando mi mette le colonne affianco la listview è larga il doppio
(ovviamente) .... MAH :-(
SixamAloe
2006-06-01 07:54:46 UTC
Permalink
Post by MultiTaskinG
Post by Rafunk
Per far sparire la scrollbar orizzontale occorre che la larghezza della colonna
più a destra si adegui a quella della listview.
Devi pertanto ridimensionare anche quella nell'evento Resize del form.
ListView.ColumnHeaders(N).Width = ...
non ci riesco.... forse perchè non ho oggetti columnheaders nella mia
listview ? io la riempio usando questo codice in un ciclo (ho una sola
colonna)
[cut]
Se hai una sola colonna perche' usare la listview? Se non hai esigenze
particolari, usa una listbox, che puoi riempire velocemente con le API,
e che di default non ha la scrollbar orizzontale.

Bye by SixaM 8-]
Fabio
2006-06-01 08:09:01 UTC
Permalink
Post by MultiTaskinG
non pensavo fosse così difficile dirgli che ho una sola colonna e non me
la deve "spezzare" in due o tre orizzontalmente....
Questo è il comportamento dello stile List.
Post by MultiTaskinG
Voglio uno scrolling verticale !!!
Quello che serve a te è il comportamento dello stile Report, devi però
aggiungere anche un ColumnHeader (che eventualmente credo si possa anche
rendere Visible = false), altrimenti non vedi niente.

Ciao

Loading...