/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
er der nogne der har prøvet Listboxen fra ~
Fra : Joachim Boll


Dato : 25-02-04 14:40

Jeg arbejder med et projekt hvor jeg skal hente nogle data i en database.
Efter brugeren har søgt i databasen, skal de poster som passer på søgningen
presenternes i en 'Listbox' hvor brugeren så kan klikke på den post han
ønsker.
Funktionsmæssigt virker det perfekt, men min Listbox liner lort, jeg smækker
nemlig bare de forskellige data i kolonnerne vha. TAB[chr(9)],

List1.AddItem (Patient.Recordset("Cpr")) & Chr(9) & _

(Patient.Recordset("Fornavn")) & Chr(9) & _

(Patient.Recordset("Mellemnavn")) & Chr(9) & _

(Patient.Recordset("Efternavn")) & Chr(9) & _

(Patient.Recordset("Adresse")) & Chr(9) & _

(Patient.Recordset("Postnr_")) & Chr(9) & _






når så Længden på de forskellige data-stringe variere, ja så ligner
Listbox'en lyn-hurtigt en rodet affære.

derfor ville jeg så bruge Windows Common Controls 6.0, og jeg tror måske
også godt den kan løse opgaven, men fejlen ligger 40cm fra tasteturet.

Jeg gik ind og oprettede de forskellige kolonner, men har ikke kunne få lagt
nogle data i førnævnte, er der nogen der kan give lidt hjælp!!!!

I den oprindelig Listbox udnytter jeg at man kan trykke på en række og bruge
listindex til at finde yderlige data i en database, kan min nye listbox også
det????



Joachim Boll




 
 
Lasse Eskildsen (25-02-2004)
Kommentar
Fra : Lasse Eskildsen


Dato : 25-02-04 15:38

Joachim Boll wrote:
> Jeg arbejder med et projekt hvor jeg skal hente nogle data i en
> database. Efter brugeren har søgt i databasen, skal de poster som
> passer på søgningen presenternes i en 'Listbox' hvor brugeren så kan
> klikke på den post han ønsker.
> Funktionsmæssigt virker det perfekt, men min Listbox liner lort, jeg
> smækker nemlig bare de forskellige data i kolonnerne vha. TAB[chr(9)],
>
> List1.AddItem (Patient.Recordset("Cpr")) & Chr(9) & _
>
> (Patient.Recordset("Fornavn")) & Chr(9) & _
>
> (Patient.Recordset("Mellemnavn")) & Chr(9) & _
>
> (Patient.Recordset("Efternavn")) & Chr(9) & _
>
> (Patient.Recordset("Adresse")) & Chr(9) & _
>
> (Patient.Recordset("Postnr_")) & Chr(9) & _
>
>
>
>
>
>
> når så Længden på de forskellige data-stringe variere, ja så ligner
> Listbox'en lyn-hurtigt en rodet affære.
>
> derfor ville jeg så bruge Windows Common Controls 6.0, og jeg tror
> måske også godt den kan løse opgaven, men fejlen ligger 40cm fra
> tasteturet.
>
> Jeg gik ind og oprettede de forskellige kolonner, men har ikke kunne
> få lagt nogle data i førnævnte, er der nogen der kan give lidt
> hjælp!!!!
>
> I den oprindelig Listbox udnytter jeg at man kan trykke på en række
> og bruge listindex til at finde yderlige data i en database, kan min
> nye listbox også det????
>
>
>
> Joachim Boll

Hej Joachim.

Er det listview du mener?

I så fald skal du starte med at oprette de kolonner du skal bruge, og husk
at sætte View til 3-lvwReport, -så får du dine data præsenteret i kolonner.
Tilføj dine elementer til den første kolonne med:
ListView.ListItems.Add([index], [key], [text], [icon], [smallicon]).

For at tilføje elementer til de andre kolonner bruger du:
ListView.ListItems(index).SubItems(1) = "Tekst"
ListView.ListItems(index).SubItems(2) = "Mere tekst"
....osv
Du kan også bruge listindex i listview'en, eller du kan tilføje dine egen
værdi til Key.

Håber du kan bruge det til noget, ellers er du velkommen til at skrive igen!

--
Lasse



Jan V. (25-02-2004)
Kommentar
Fra : Jan V.


Dato : 25-02-04 16:32


"Lasse Eskildsen" <leskil@SLETwebspeed.dk> skrev i en meddelelse
news:403cb3b3$0$253$edfadb0f@dread12.news.tele.dk...
> Joachim Boll wrote:
> > Jeg arbejder med et projekt hvor jeg skal hente nogle data i en
> > database. Efter brugeren har søgt i databasen, skal de poster som
> > passer på søgningen presenternes i en 'Listbox' hvor brugeren så kan
> > klikke på den post han ønsker.
> > Funktionsmæssigt virker det perfekt, men min Listbox liner lort, jeg
> > smækker nemlig bare de forskellige data i kolonnerne vha. TAB[chr(9)],
> >
> > List1.AddItem (Patient.Recordset("Cpr")) & Chr(9) & _
> >
> > (Patient.Recordset("Fornavn")) & Chr(9) & _
> >
> > (Patient.Recordset("Mellemnavn")) & Chr(9) & _
> >
> > (Patient.Recordset("Efternavn")) & Chr(9) & _
> >
> > (Patient.Recordset("Adresse")) & Chr(9) & _
> >
> > (Patient.Recordset("Postnr_")) & Chr(9) & _
> >
> >
> >
> >
> >
> >
> > når så Længden på de forskellige data-stringe variere, ja så ligner
> > Listbox'en lyn-hurtigt en rodet affære.
> >
> > derfor ville jeg så bruge Windows Common Controls 6.0, og jeg tror
> > måske også godt den kan løse opgaven, men fejlen ligger 40cm fra
> > tasteturet.
> >
> > Jeg gik ind og oprettede de forskellige kolonner, men har ikke kunne
> > få lagt nogle data i førnævnte, er der nogen der kan give lidt
> > hjælp!!!!
> >
> > I den oprindelig Listbox udnytter jeg at man kan trykke på en række
> > og bruge listindex til at finde yderlige data i en database, kan min
> > nye listbox også det????
> >
> >
> >
> > Joachim Boll
>
> Hej Joachim.
>
> Er det listview du mener?
>
> I så fald skal du starte med at oprette de kolonner du skal bruge, og husk
> at sætte View til 3-lvwReport, -så får du dine data præsenteret i
kolonner.
> Tilføj dine elementer til den første kolonne med:
> ListView.ListItems.Add([index], [key], [text], [icon], [smallicon]).
>
> For at tilføje elementer til de andre kolonner bruger du:
> ListView.ListItems(index).SubItems(1) = "Tekst"
> ListView.ListItems(index).SubItems(2) = "Mere tekst"
> ...osv
> Du kan også bruge listindex i listview'en, eller du kan tilføje dine egen
> værdi til Key.
>
> Håber du kan bruge det til noget, ellers er du velkommen til at skrive
igen!
>
> --
> Lasse
>

Og her kommer lige et par nemme funktioner:

Først kører du en DefineListview, hvor du sender en streng over bestående af
"header1" & VBTab & kolonnebredde osv - det gør du for de kolonner, du skal
anvende:

Sub DefineListView(Data As String, ByRef lstwObject As Object)

Dim D
Dim Count As Integer

D = Split(Data, Chr(9))

For Count = 1 To (UBound(D) + 1) / 2
lstwObject.ColumnHeaders.Add , , D((Count - 1) * 2), D(((Count - 1) * 2)
+ 1)
Next Count

End Sub


Og når du så skal tilføje data, bruger du AddToListView "Data1" & VBTab &
"Data2" osv.:

Sub AddToListView(Data As String, ByRef lstwObject As ListView)

Dim D
Dim Count As Integer
Dim Height As Integer
Dim LRow As Integer

D = Split(Data, Chr(9))

LRow = lstwObject.ListItems.Count + 1

lstwObject.ListItems.Add Val(LRow), , D(0)

If UBound(D) > 0 Then
For Count = 1 To UBound(D)
lstwObject.ListItems(LRow).ListSubItems.Add = D(Count)
Next Count
End If

End Sub


Pas bare lidt på med listview'en. Med alternativet til listview'en,
flexgrid, kan du lave sortering på de enkelte kolonner udfra såvel tekst som
talværdi. Dvs som tal kommer 1 før 02, mens som tekst kommer 02 før 1.

I et listview kan du kun sortere efter tekst

Til gengæld er listview'en mere dynamisk - så det må være efter behov
hvilken kontrol man vælger.

Jan



Harald Staff (25-02-2004)
Kommentar
Fra : Harald Staff


Dato : 25-02-04 17:39

> Pas bare lidt på med listview'en. Med alternativet til listview'en,
> flexgrid, kan du lave sortering på de enkelte kolonner udfra såvel tekst
som
> talværdi. Dvs som tal kommer 1 før 02, mens som tekst kommer 02 før 1.
>
> I et listview kan du kun sortere efter tekst

La meg så glede dere alle med en utrolig nyttig modul som sorterer en Lvw
også på tall eller dato-tid. Jeg kan dessverre ikke finne hvem som i sin tid
skrev den -den er fra den fantastiske http://www.planet-source-code.com/ -
men den er erfaringsmessig meget pålitelig, jeg anvender den i nærmest alle
mine prosjekter for mange hundre brukere og den svikter aldri.

Option Explicit

Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As
Long) As Long

Public Enum ListDataType
ldtString = 0
ldtNumber = 1
ldtDateTime = 2
End Enum

'***************************************************************************
****
' Sort a ListView by String, Number, or DateTime
'
' Parameters:
'
' ListView Reference to the ListView control to be sorted.
' Index Index of the column in the ListView to be sorted. The first
' column in a ListView has an index value of 1.
' DataType Sets whether the data in the column is to be sorted
' alphabetically, numerically, or by date.
' Ascending Sets the direction of the sort. True sorts A-Z (Ascending),
' and False sorts Z-A (descending)
'---------------------------------------------------------------------------
----

Public Sub SortListView(ListView As ListView, ByVal Index As Integer, _
ByVal datatype As ListDataType, ByVal Ascending As Boolean)

On Error Resume Next
Dim i As Integer
Dim l As Long
Dim strFormat As String

' Display the hourglass cursor whilst sorting

Dim lngCursor As Long
lngCursor = ListView.MousePointer
ListView.MousePointer = vbHourglass

' Prevent the ListView control from updating on screen - this is to hide
' the changes being made to the listitems, and also to speed up the sort

LockWindowUpdate ListView.hWnd

Dim blnRestoreFromTag As Boolean

Select Case datatype
Case ldtString

' Sort alphabetically. This is the only sort provided by the
' MS ListView control (at this time), and as such we don't really
' need to do much here

blnRestoreFromTag = False

Case ldtNumber

' Sort Numerically

strFormat = String$(20, "0") & "." & String$(10, "0")

' Loop through the values in this column. Re-format the values so
' as they can be sorted alphabetically, having already stored their
' text values in the tag, along with the tag's original value

With ListView.ListItems
If (Index = 1) Then
For l = 1 To .Count
With .Item(l)
.Tag = .Text & Chr$(0) & .Tag
If IsNumeric(.Text) Then
If CDbl(.Text) >= 0 Then
.Text = Format(CDbl(.Text), strFormat)
Else
.Text = "&" & InvNumber(Format(0 -
CDbl(.Text), strFormat))
End If
Else
.Text = ""
End If
End With
Next l
Else
For l = 1 To .Count
With .Item(l).ListSubItems(Index - 1)
.Tag = .Text & Chr$(0) & .Tag
If IsNumeric(.Text) Then
If CDbl(.Text) >= 0 Then
.Text = Format(CDbl(.Text), strFormat)
Else
.Text = "&" & InvNumber(Format(0 -
CDbl(.Text), strFormat))
End If
Else
.Text = ""
End If
End With
Next l
End If
End With

blnRestoreFromTag = True

Case ldtDateTime

' Sort by date.

strFormat = "YYYYMMDDHhNnSs"

Dim dte As Date

' Loop through the values in this column. Re-format the dates so as
they
' can be sorted alphabetically, having already stored their visible
' values in the tag, along with the tag's original value

With ListView.ListItems
If (Index = 1) Then
For l = 1 To .Count
With .Item(l)
.Tag = .Text & Chr$(0) & .Tag
dte = CDate(.Text)
.Text = Format$(dte, strFormat)
End With
Next l
Else
For l = 1 To .Count
With .Item(l).ListSubItems(Index - 1)
.Tag = .Text & Chr$(0) & .Tag
dte = CDate(.Text)
.Text = Format$(dte, strFormat)
End With
Next l
End If
End With

blnRestoreFromTag = True

End Select

' Sort the ListView Alphabetically

ListView.SortOrder = IIf(Ascending, lvwAscending, lvwDescending)
ListView.SortKey = Index - 1
ListView.Sorted = True

' Restore the Text Values if required

If blnRestoreFromTag Then

' Restore the previous values to the 'cells' in this column of the
list
' from the tags, and also restore the tags to their original values

With ListView.ListItems
If (Index = 1) Then
For l = 1 To .Count
With .Item(l)
i = InStr(.Tag, Chr$(0))
.Text = Left$(.Tag, i - 1)
.Tag = Mid$(.Tag, i + 1)
End With
Next l
Else
For l = 1 To .Count
With .Item(l).ListSubItems(Index - 1)
i = InStr(.Tag, Chr$(0))
.Text = Left$(.Tag, i - 1)
.Tag = Mid$(.Tag, i + 1)
End With
Next l
End If
End With
End If

' Unlock the list window so that the OCX can update it

LockWindowUpdate 0&

' Restore the previous cursor

ListView.MousePointer = lngCursor


End Sub

'***************************************************************************
****
' Modifies a numeric string to allow it to be sorted alphabetically
'---------------------------------------------------------------------------
----

Private Function InvNumber(ByVal Number As String) As String
Static i As Integer
For i = 1 To Len(Number)
Select Case Mid$(Number, i, 1)
Case "-": Mid$(Number, i, 1) = " "
Case "0": Mid$(Number, i, 1) = "9"
Case "1": Mid$(Number, i, 1) = "8"
Case "2": Mid$(Number, i, 1) = "7"
Case "3": Mid$(Number, i, 1) = "6"
Case "4": Mid$(Number, i, 1) = "5"
Case "5": Mid$(Number, i, 1) = "4"
Case "6": Mid$(Number, i, 1) = "3"
Case "7": Mid$(Number, i, 1) = "2"
Case "8": Mid$(Number, i, 1) = "1"
Case "9": Mid$(Number, i, 1) = "0"
End Select
Next
InvNumber = Number
End Function

'***************************************************************************
****
'
'---------------------------------------------------------------------------
----




Jan V. (27-02-2004)
Kommentar
Fra : Jan V.


Dato : 27-02-04 08:22


"Harald Staff" <innocent@enron.invalid> skrev i en meddelelse
news:c1ij2c$i18$1@services.kq.no...
> La meg så glede dere alle med en utrolig nyttig modul som sorterer en Lvw
> også på tall eller dato-tid. Jeg kan dessverre ikke finne hvem som i sin
tid
> skrev den -den er fra den fantastiske http://www.planet-source-code.com/ -
> men den er erfaringsmessig meget pålitelig, jeg anvender den i nærmest
alle
> mine prosjekter for mange hundre brukere og den svikter aldri.
>

Taaak

Den skal afprøves med det samme, jeg sidder i forvejen og roder med et
projekt, hvor jeg skal bruge Listview'en, så jeg vil lige smide det her ind
og se hvordan det kører.

Jan



Joachim Boll (26-02-2004)
Kommentar
Fra : Joachim Boll


Dato : 26-02-04 11:51


"Lasse Eskildsen" <leskil@SLETwebspeed.dk> skrev i en meddelelse
news:403cb3b3$0$253$edfadb0f@dread12.news.tele.dk...
> Joachim Boll wrote:
> > Jeg arbejder med et projekt hvor jeg skal hente nogle data i en
> > database. Efter brugeren har søgt i databasen, skal de poster som
> > passer på søgningen presenternes i en 'Listbox' hvor brugeren så kan
> > klikke på den post han ønsker.
> > Funktionsmæssigt virker det perfekt, men min Listbox liner lort, jeg
> > smækker nemlig bare de forskellige data i kolonnerne vha. TAB[chr(9)],
> >
> > List1.AddItem (Patient.Recordset("Cpr")) & Chr(9) & _
> >
> > (Patient.Recordset("Fornavn")) & Chr(9) & _
> >
> > (Patient.Recordset("Mellemnavn")) & Chr(9) & _
> >
> > (Patient.Recordset("Efternavn")) & Chr(9) & _
> >
> > (Patient.Recordset("Adresse")) & Chr(9) & _
> >
> > (Patient.Recordset("Postnr_")) & Chr(9) & _
> >
> >
> >
> >
> >
> >
> > når så Længden på de forskellige data-stringe variere, ja så ligner
> > Listbox'en lyn-hurtigt en rodet affære.
> >
> > derfor ville jeg så bruge Windows Common Controls 6.0, og jeg tror
> > måske også godt den kan løse opgaven, men fejlen ligger 40cm fra
> > tasteturet.
> >
> > Jeg gik ind og oprettede de forskellige kolonner, men har ikke kunne
> > få lagt nogle data i førnævnte, er der nogen der kan give lidt
> > hjælp!!!!
> >
> > I den oprindelig Listbox udnytter jeg at man kan trykke på en række
> > og bruge listindex til at finde yderlige data i en database, kan min
> > nye listbox også det????
> >
> >
> >
> > Joachim Boll
>
> Hej Joachim.
>
> Er det listview du mener?
>
> I så fald skal du starte med at oprette de kolonner du skal bruge, og husk
> at sætte View til 3-lvwReport, -så får du dine data præsenteret i
kolonner.
> Tilføj dine elementer til den første kolonne med:
> ListView.ListItems.Add([index], [key], [text], [icon], [smallicon]).
>
> For at tilføje elementer til de andre kolonner bruger du:
> ListView.ListItems(index).SubItems(1) = "Tekst"
> ListView.ListItems(index).SubItems(2) = "Mere tekst"
> ...osv
> Du kan også bruge listindex i listview'en, eller du kan tilføje dine egen
> værdi til Key.
>
> Håber du kan bruge det til noget, ellers er du velkommen til at skrive
igen!
>
> --
> Lasse
>
>

Hej Lasse
Mangfe tak for hjælpen, det var lige hvad jeg manglede, men jeg har lige et
sidste spørgsmål:

Her ser du hvordan jeg kaster Data ind i listen


With ListView1.ListItems.Add
. ?????? = Data1.Recordset("Fornavn")
'???????????????????????
.SubItems(1) = Data1.Recordset("Fornavn")
.SubItems(2) = Data1.Recordset("Mellemnavn")
.SubItems(3) = Data1.Recordset("Efternavn")
.SubItems(4) = Data1.Recordset("Adresse")
.SubItems(5) = Data1.Recordset("postnr")
End With

Men jeg har lidt problemer med at ligge data ind i den første kolonne, jeg
burde bare kunne skrive SubItems(0), men nej er der nogen som har gode
ide'er

Joachim







Jan Vennike (26-02-2004)
Kommentar
Fra : Jan Vennike


Dato : 26-02-04 12:24



"Joachim Boll" <joachimFJERN@DETTEinmedico.dk> skrev i en meddelelse
news:403dcfaf$0$1621$edfadb0f@dread14.news.tele.dk...
>
> "Lasse Eskildsen" <leskil@SLETwebspeed.dk> skrev i en meddelelse
> news:403cb3b3$0$253$edfadb0f@dread12.news.tele.dk...
> > Joachim Boll wrote:
> > > Jeg arbejder med et projekt hvor jeg skal hente nogle data i en
> > > database. Efter brugeren har søgt i databasen, skal de poster som
> > > passer på søgningen presenternes i en 'Listbox' hvor brugeren så kan
> > > klikke på den post han ønsker.
> > > Funktionsmæssigt virker det perfekt, men min Listbox liner lort, jeg
> > > smækker nemlig bare de forskellige data i kolonnerne vha. TAB[chr(9)],
> > >
> > > List1.AddItem (Patient.Recordset("Cpr")) & Chr(9) & _
> > >
> > > (Patient.Recordset("Fornavn")) & Chr(9) & _
> > >
> > > (Patient.Recordset("Mellemnavn")) & Chr(9) & _
> > >
> > > (Patient.Recordset("Efternavn")) & Chr(9) & _
> > >
> > > (Patient.Recordset("Adresse")) & Chr(9) & _
> > >
> > > (Patient.Recordset("Postnr_")) & Chr(9) & _
> > >
> > >
> > >
> > >
> > >
> > >
> > > når så Længden på de forskellige data-stringe variere, ja så ligner
> > > Listbox'en lyn-hurtigt en rodet affære.
> > >
> > > derfor ville jeg så bruge Windows Common Controls 6.0, og jeg tror
> > > måske også godt den kan løse opgaven, men fejlen ligger 40cm fra
> > > tasteturet.
> > >
> > > Jeg gik ind og oprettede de forskellige kolonner, men har ikke kunne
> > > få lagt nogle data i førnævnte, er der nogen der kan give lidt
> > > hjælp!!!!
> > >
> > > I den oprindelig Listbox udnytter jeg at man kan trykke på en række
> > > og bruge listindex til at finde yderlige data i en database, kan min
> > > nye listbox også det????
> > >
> > >
> > >
> > > Joachim Boll
> >
> > Hej Joachim.
> >
> > Er det listview du mener?
> >
> > I så fald skal du starte med at oprette de kolonner du skal bruge, og
husk
> > at sætte View til 3-lvwReport, -så får du dine data præsenteret i
> kolonner.
> > Tilføj dine elementer til den første kolonne med:
> > ListView.ListItems.Add([index], [key], [text], [icon], [smallicon]).
> >
> > For at tilføje elementer til de andre kolonner bruger du:
> > ListView.ListItems(index).SubItems(1) = "Tekst"
> > ListView.ListItems(index).SubItems(2) = "Mere tekst"
> > ...osv
> > Du kan også bruge listindex i listview'en, eller du kan tilføje dine
egen
> > værdi til Key.
> >
> > Håber du kan bruge det til noget, ellers er du velkommen til at skrive
> igen!
> >
> > --
> > Lasse
> >
> >
>
> Hej Lasse
> Mangfe tak for hjælpen, det var lige hvad jeg manglede, men jeg har lige
et
> sidste spørgsmål:
>
> Her ser du hvordan jeg kaster Data ind i listen
>
>
> With ListView1.ListItems.Add
> . ?????? = Data1.Recordset("Fornavn")
> '???????????????????????
> .SubItems(1) = Data1.Recordset("Fornavn")
> .SubItems(2) = Data1.Recordset("Mellemnavn")
> .SubItems(3) = Data1.Recordset("Efternavn")
> .SubItems(4) = Data1.Recordset("Adresse")
> .SubItems(5) = Data1.Recordset("postnr")
> End With
>
> Men jeg har lidt problemer med at ligge data ind i den første kolonne,
jeg
> burde bare kunne skrive SubItems(0), men nej er der nogen som har gode
> ide'er
>
> Joachim
>
Prøv at kigge på de 2 funktioner jeg (fra arbejdet) lagde til dig - de gør
det meget lettere.

--
Jan

Remove the cat in the email to reach me



Lasse Eskildsen (27-02-2004)
Kommentar
Fra : Lasse Eskildsen


Dato : 27-02-04 21:51

> Hej Lasse
> Mangfe tak for hjælpen, det var lige hvad jeg manglede, men jeg har
> lige et sidste spørgsmål:
>
> Her ser du hvordan jeg kaster Data ind i listen
>
>
> With ListView1.ListItems.Add
> . ?????? = Data1.Recordset("Fornavn")
> '???????????????????????
> .SubItems(1) = Data1.Recordset("Fornavn")
> .SubItems(2) = Data1.Recordset("Mellemnavn")
> .SubItems(3) = Data1.Recordset("Efternavn")
> .SubItems(4) = Data1.Recordset("Adresse")
> .SubItems(5) = Data1.Recordset("postnr")
> End With
>
> Men jeg har lidt problemer med at ligge data ind i den første
> kolonne, jeg burde bare kunne skrive SubItems(0), men nej er der
> nogen som har gode ide'er
>
> Joachim

Hej Joachim

Den første kolonne er ikke en subitem, så den tilføjer du bare med
ListView1.ListItems.Add()

Din kode kunne f.eks. se således ud:

dim i as integer 'Bruges til index, i de forskellige listitems.
for i = 0 to Data1.Recordset.count
With ListView1
.Listitems.Add(i, Data1.Recordset("Fornavn")
.Listitems(i).SubItems(1) = Data1.Recordset("Fornavn")
.Listitems(i).SubItems(2) = Data1.Recordset("Mellemnavn")
.Listitems(i).SubItems(3) = Data1.Recordset("Efternavn")
.Listitems(i).SubItems(4) = Data1.Recordset("Adresse")
.Listitems(i).SubItems(5) = Data1.Recordset("postnr")
'Indsæt kode til at gå til næste post, eller får du en uendelig
løkke...
Next

Koden er ikke testet, og skal måske lige tilpasses lidt

Men prøv evt. at kigge på Jans eksempel.

Med venlig hilsen

--
Lasse



Jan V. (02-03-2004)
Kommentar
Fra : Jan V.


Dato : 02-03-04 07:31


"Lasse Eskildsen" <leskil@SLETwebspeed.dk> skrev i en meddelelse
news:403fae41$0$267$edfadb0f@dread12.news.tele.dk...
> > Hej Lasse
> > Mangfe tak for hjælpen, det var lige hvad jeg manglede, men jeg har
> > lige et sidste spørgsmål:
> >
> > Her ser du hvordan jeg kaster Data ind i listen
> >
> >
> > With ListView1.ListItems.Add
> > . ?????? = Data1.Recordset("Fornavn")
> > '???????????????????????
> > .SubItems(1) = Data1.Recordset("Fornavn")
> > .SubItems(2) = Data1.Recordset("Mellemnavn")
> > .SubItems(3) = Data1.Recordset("Efternavn")
> > .SubItems(4) = Data1.Recordset("Adresse")
> > .SubItems(5) = Data1.Recordset("postnr")
> > End With
> >
> > Men jeg har lidt problemer med at ligge data ind i den første
> > kolonne, jeg burde bare kunne skrive SubItems(0), men nej er der
> > nogen som har gode ide'er
> >
> > Joachim
>
> Hej Joachim
>
> Den første kolonne er ikke en subitem, så den tilføjer du bare med
> ListView1.ListItems.Add()
>
> Din kode kunne f.eks. se således ud:
>
> dim i as integer 'Bruges til index, i de forskellige listitems.
> for i = 0 to Data1.Recordset.count
> With ListView1
> .Listitems.Add(i, Data1.Recordset("Fornavn")
> .Listitems(i).SubItems(1) = Data1.Recordset("Fornavn")
> .Listitems(i).SubItems(2) = Data1.Recordset("Mellemnavn")
> .Listitems(i).SubItems(3) = Data1.Recordset("Efternavn")
> .Listitems(i).SubItems(4) = Data1.Recordset("Adresse")
> .Listitems(i).SubItems(5) = Data1.Recordset("postnr")
> 'Indsæt kode til at gå til næste post, eller får du en
uendelig
> løkke...
> Next
>
> Koden er ikke testet, og skal måske lige tilpasses lidt
>
> Men prøv evt. at kigge på Jans eksempel.
>
> Med venlig hilsen
>
> --
> Lasse
>
Mit eksempel er en generel funktion, som kan anvendes på alle listview's.

Jeg har et modul, hvor de to ligger i og jeg har nu også tilføjet den fra
Harald (som jeg dog mangler at teste endnu).

Jan



Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408182
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste