Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 19:29 Der er 19 kommentarer og
1 løsning

Listbox fra form2 udskrives i form1 - hvordan ?

Hvordan kan jeg få adgang til frmOptions.List2 fra form1

Jeg har prøvet med

Public List2 As String

i et modul, men det hjalp mig intet, for når jeg laver et breakpoint, og så skriver ?frmOptions.list2.list(0) for at udskrive første værdi så får jeg intet (dvs. jeg får en masse intet)

Nogle der kunne hjælpe ??

Stadig newb !!
Avatar billede joern Nybegynder
31. marts 2003 - 19:42 #1
Hej.

Det med at udskrive kan jeg ikke kommentere, men for at få fat i data fra en anden forms listeboks skal du for en kontrol (knap) skrive f.eks.:

for a = 0 to frmoptions.list2.listcount -1
  frmoptions.list2.listindex = a
  msgbox ( frmoptions.list2.text)
next a

Til inspiration

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 19:49 #2
Det kunne meget vel virke, men jeg har ingen ide....fordi jeg kan ikke få fat i dataen fra den anden form
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 19:51 #3
kan man ikke kun bruge frmOptions.List2.Text hvis der er en der er markeret ??

Jeg vil bare have alle dem der er i listboxen skrevet ud til en MSGBox én efter én
Avatar billede joern Nybegynder
31. marts 2003 - 20:01 #4
Hej.

Jeg laver en prøve selv.

M.v.h.  Jørn
Avatar billede joern Nybegynder
31. marts 2003 - 20:06 #5
Hej igen.

Det eksempel jeg har beskrevet ovenfor fungerer i vb5 på win98.

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 20:13 #6
Det virker ikke hos mig med VB6.0 og XP :(

Den fortsætter bare, og stopper aldrig, fordi der ikke er noget i list2, og da man trækker 1 fra den, kommer den jo under 0, og vil derfor aldrig stoppe

Derfor må det jo være fordi den ikke har adgang til dataen, da jeg nemlig har fyldt den med text

Det er meget mærkeligt !
Avatar billede joern Nybegynder
31. marts 2003 - 20:20 #7
Hej.

Nu er jeg lidt forvirret.

Den form du har kaldt frmoptions, indeholder den ikke en kontrol der hedder list2 ?

Altså.  Fra den form (form2) hvor du vil kalde nogle data i form1, skal du selvfølgelig henvise til den liste der ligger i form1.

Op du vil putte data i en msgbox eller tekstfelter eller en anden liste er ligegyldigt, men du skal skrive navnet på form og listekontrol korrekt!

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 20:22 #8
Ok....jeg har fundet ud af at det virker fint med list1, men ikke med list2, og det er meget mærkeligt

Jeg kan sagtens få det til at virke hvis jeg ændre koden så den hedder således:

For a = 0 To frmOptions.List1.ListCount - 1
frmOptions.List1.ListIndex = a
MsgBox (frmOptions.List1.Text)
Next a

List2 bliver fyldt med text fra list1 ved hjælp af den fine kode du gav mig tidligere

http://www.eksperten.dk/spm/334594
Avatar billede joern Nybegynder
31. marts 2003 - 21:25 #9
Hej.

Du kommer til at bukke i neon, hvad rest-problemet så er.

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 22:10 #10
Helt iorden :D

Problemet er det at jeg ikke får nogen data fra List2, selvom jeg har noget i den

Jeg fylder List1 med de aktuelle processer, og ved hjælp af en anden kode kan jeg flytte emner fra den ene Listbox til den anden

Problemet er det at jeg sagtens kan få det til at virke ved at bruge den kode jeg skrev lidt oppe, men at det ikke virker med List2, som lader til at få ingen værdi

Jeg kan ikke helt finde ud af hvorfor den ikke har nogen værdi


Det lader til at det ikke vil virke lige så snart det er inde i en Timer1_Timer() !?

Kan det være det der er problemet ??

Jeg har prøvet at placere det alle andre steder i form1, og der virker det fint nok....

Hvad kan jeg eventuelt gøre for at det vil virke i Timer1_Timer()
Avatar billede joern Nybegynder
31. marts 2003 - 22:33 #11
Hej.

Ok, det er derfor du henviser til spørgsmålet om tasklist.  Indholdet i list1 på formen frmoptions er de aktuelt kørende processer...  Så flytter du nogle af disse poster til en anden liste - list2.  Men hvilken form ligger list2 i?  Og - undskyld mig - hvorfor bruger du to forme?

Men du kommer nok til at anbringe den kritiske kode her, for at beskrive problemet, hvis jeg skal forstå det.

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 22:50 #12
List1/2 befinder sig begge 2 på frmOptions

Jeg bruger to forme fordi jeg har et sted hvor man skal kunne sætte programmet op til det man godt vil have...

### Kode ###

Private Sub Timer1_Timer()

    Dim datoogtid As String
   
    datoogtid = DateDiff("s", Now, frmOptions.DTPicker.Value & " " & Format(frmOptions.TMPicker.Value, "hh:mm:ss"))


....

If datoogtid < 1 Then

....

If frmOptions.Option6 = True Then
  Dim a As Integer
  For a = 0 To frmOptions.List2.ListCount - 1
  frmOptions.List2.ListIndex = a
  MsgBox (frmOptions.List2.Text)
  Next a
End If

...
End If
...
End If

### Kode slut ###

Sådan noget lignende

Har pillet det uvæsnlige ud, da det eller ville blive en meget lang post
Avatar billede pissed_squirrel Nybegynder
31. marts 2003 - 22:50 #13
manglede lige en:

end sub
Avatar billede joern Nybegynder
31. marts 2003 - 23:04 #14
Hej.

Jeg synes du skal dimensionere dine variable øverst på formen (altså a og datoogtid) og ikke inde under en betingelse eller en timer.  Under timeren går det helt galt for næste gang timeren 'slår' bliver variablen tømt, det gør den jo når den dimensioneres igen.  Det er noget kuk.

Selv dimensioner jeg altid i et modul og gør variable globale, hvorved de bevarer indhold uanset i hvilken form de tildeles indhold, og uanset hvor de senere kaldes fra, - men det er en andet debat.

Men list2 får jo ikke noget indhold før du har tildelt noget med 'additem', hvor skulle det ellers komme fra?
Hvis du opererer indenfor frmoptions er det ikke nødvendigt at angive 'frmoptions' foran list1 og list2.
Det er desværre stadig uklart for mig hvorfor du så har 2 lister.  Meningen må vel være at det ikke er samme indhold de to lister har?  Og hvorfor en timer?

Du kommer til at undvære mine svar til i morgen, for jeg tørner ind nu.  Men det ku' da være at andre kom på banen.

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
01. april 2003 - 13:36 #15
Du har helt ret med hensyn til at jeg har 2 lister, og som jeg jo siger så virker det fint med den kode du skrev ovenfor til "udskrive" fra array'et

Problemet er jo at det bare ikke virker inde i timeren....

Jeg har intet problem med variablen datoogtid, det virker fint nok
Avatar billede joern Nybegynder
01. april 2003 - 14:08 #16
Hej.

Det lader til at du ikke forstår, at jeg ikke er klar over problemet.

Indeholder list2 nogle poster og hvor kommer de fra?

Jeg er da i tvivl om man kan sætte en for-next løkke ind i en timer - og hvorfor vil du det?

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
01. april 2003 - 22:34 #17
Ok....undskyld

Jeg ved at det virker med at bruge en for løkke inde i en Timer, da det virker fint nok hvis jeg vil hente data fra list1

Hvis jeg der imod ændre koden så den skal hente fra list2, så sker der intet, og det er det jeg ikke forstår...

list1 bliver fyldt med de aktuelle processer, ved hjælp af den kode du gav mig i et foregående spørgsmål

Man kan så vælge et objekt i list1 og trykke på en knap som tilføjer det til list2, og samtidig sletter det på list1

Når jeg så har tilføjet X antal objekter til list2, og starter nedtællingen, så sker der intet

Men det virker hvis jeg ændrer koden så den skal udskrive fra list1 (alså alle aktive processer)

Hvad kan problemet være ?
Avatar billede joern Nybegynder
01. april 2003 - 22:45 #18
Hej.

Nu ved jeg at list2 indeholder nogle poster.  Så er det altså din 'if datoogtid' der er noget galt med.  Prøv at sætte en msgbox indenfor if'en i stil med:
msgbox ("nu er jeg indenfor datoogtid betingelsen").

Du laver en sammenligning på 'sekunder' så din 'if' skal altså udføres når datoogtid er nul.  Det begriber jeg ikke hvad formålet er med.  Jeg tror ikke jeg kan bidrage med mere, men vil foreslå dig at tænke dit projekt lidt om.  Fremdeles er jeg uvidende om hvad formålet med hele øvelsen er!!!

Du skal altså ikke forvente flere svar fra mig, jeg står af nu.

M.v.h.  Jørn
Avatar billede pissed_squirrel Nybegynder
02. april 2003 - 10:15 #19
Ok....

Så må jeg jo bare klare mig selv....

Tak for alt den hjælp du dog er kommet med !! :D
Avatar billede pissed_squirrel Nybegynder
03. april 2003 - 16:40 #20
Jeg har fundet ud af det, det vidste sig at jeg bare havde dummet mig, og det var derfor det ikke virkede...:)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester