[ MishaP @ 02.08.2008. 10:20 ] @
Kako postaviti index u listview control u VB6. Znači želim da se u load proceduri fokusiram na određeni index i da izvršim neki događaj.

ListView1.SelectedItem = ListView1.ListItems(1)
ListView1.SetFocus

Prethodni kod radi u click dodađaju nekog dugmeta, ali ne radi u load proceduri.

Hvala
[ dava @ 02.08.2008. 10:53 ] @
Dobro dosao na forum.

Code:

Private Sub Form_Load()

    ListView1.ColumnHeaders.Add , , "Prva kol", ListView1.Width / 6
    ListView1.ColumnHeaders.Add , , "Druga", ListView1.Width / 4
    ListView1.ColumnHeaders.Add , , "treca", ListView1.Width / 5

    ListView1.View = lvwReport

    Set objItem = ListView1.ListItems.Add(1, , "aaa")
        objItem.SubItems(1) = "123"
        objItem.SubItems(2) = "ccc"
    Set objItem = ListView1.ListItems.Add(2, , "bbb")
        objItem.SubItems(1) = "567"
        objItem.SubItems(2) = "ccc"
        
    Set objItem = ListView1.ListItems.Item(1)
        objItem.SubItems(2) = "ddd"
    Set objItem = ListView1.ListItems.Add(3, , "zadnji")
    
    ListView1.SelectedItem = ListView1.ListItems(2)
    
    Debug.Print ListView1.SelectedItem
    
End Sub


Predposlednjom linijom koda (ako zanemarimo End Sub) mu kazemo da se pozicionira na drugi red u nasoj ListView kontroli.
Zadnjom linijom uzimamo vrijednost iz fokusirane celije.

Da bi procitao neki subitems ides ovako:

ListView1.SelectedItem.ListSubItems(2)
[ goranvuc @ 02.08.2008. 11:23 ] @
Code:

ListView1.SetFocus

Ovo ne mozes raditi u Form_Load dogadjaju. Ako hoces da ListView ima fokus pri otvaranju forme stavi da mu je TabIndex = 0
[ MishaP @ 02.08.2008. 14:20 ] @
Pozdrav ljudi,
meni treba sledeće:

Kada pozovem neki događaj, recimo ponovo puni listu, da se fokusira na određeni zapis i da mi izvrši događaj definisan u itemclick proceduri.
Znači:

1. Napuni listu
2. Idi na listindex broj x (obično je x=0)
3. izvrši događaj listclick za index x

Znači kada kliknem na moju listu punim drugu a kriterijum je podatak u x vrsti.
[ goranvuc @ 02.08.2008. 14:25 ] @
Nemam nameru da izmaštam iz n iteracija šta ti u stvari želiš, ako hoćeš da ti pomognemo uploaduj projekat ili stavi kod od te tvoje forme.
[ MishaP @ 02.08.2008. 14:39 ] @
Ljudi jednostavno kada ucitam listu da mi se pozicionira na 1. zapis i da izvrsi događaj a ne da moram da kliknem na listu.
[ goranvuc @ 02.08.2008. 14:48 ] @
E jesi biser :)

Ako imaš proceduru:
Code:

Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
   
   'ovde radis nesto
   
End Sub

i hoćeš da u nekoj drugoj proceduri obeležiš stavku sa indeksom 5 i istovremeno da se izvrši događaj kao da je korisnik kliknuo na tu stavku onda:
Code:

ListView1.ListItems(5).Selected = True
ListView1_ItemClick ListView1.ListItems(5)

Dakle, pozovi događaj :)
[ Aleksandar Ružičić @ 02.08.2008. 14:51 ] @
Code:

ListView1.ListITems(1).Selected = True
LIstView1_Click


edit:
pretece me goran :)
[ MishaP @ 02.08.2008. 15:30 ] @
Ha,ha

Znam za pozivanje procedura, problem je sto ne znam koja radi u kom događaju recimo sledeća radi u load proceduri ali neće u sledećoj:

Private Sub Command26_Click()


ListView1_ItemClick ListView1.ListItems(1)
ListView1.ListItems(1).Selected = True


End Sub


Neće da SELEKTUJE zapis (ne oboji ga).

Takođe setfocus radi u svim ostalim sem u load proceduri. Ova listview kontrola mi nije najjasnija.
[ goranvuc @ 02.08.2008. 16:04 ] @
Hajde probaj da pises koristeci termine koje svi razumemo.

Stalno pominjes load proceduru, ja sam pretpostavio da je u pitanju Form_Load() i ako sam dobro pretpostavio onda si vec dobio odgovor zasto ti ne radi setfocus: setfocus ne radi u form_load proceduri, tj. ne mozes podesavati fokus dok se forma ucitava.

Sto se tice:
Citat:
MishaP:Neće da SELEKTUJE zapis (ne oboji ga).
iskljuci HideSelection i bice sve u redu.

Moras prvo ti biti jasan
[ MishaP @ 02.08.2008. 16:33 ] @
Sad sve radi.
Prvi put koristim ovu kontrolu pa sam se zagubio.

Hvala ljudi!
[ icobh @ 02.08.2008. 17:36 ] @
Pipaj brate kao i mi svi. Nije se niko rodio pametan. Imaš Google, PSC... Možeš i sâm pogledati šta kontrola nudi od ugrađenih funkcija, polja itd... Pozoveš neki action pa vidi šta će se dogoditi...