Avatar billede xfox Nybegynder
31. januar 2002 - 09:12 Der er 13 kommentarer og
1 løsning

Combobox værdi til.......

Jeg har en combobox på min form2 som indeholder en liste af navne som jeg henter fra en access-database.
På min form1 har jeg en række billeder som jeg har navngivet min de samme navne som findes i min combobox på form2. Jeg vil nu kunne vælge et navn i min combobox og derved henvises til billedet på form1 og evt. flyttet det med "left" commandoen. Det skulle se ud som noget hen af:
form1.[form2.combo1.text].left = 100

Det virker bare ikke. Nogen der har et godt forslag?
Avatar billede martin_moth Mester
31. januar 2002 - 09:42 #1
Evt. kunne du gøre det på en lidt anden måde, med f.eks. en select case

Select Case form2.combo1.text
  case "billed1"
    form1.billed1.left = 100
  case ... o.s.v.

Men det passer måske ikke ind i "dit kram". /Martin
Avatar billede rasmuss Nybegynder
31. januar 2002 - 11:07 #2
Du kunne give billederne et index nummer!

SÅ:

inde i comboboxen:

Billede(combo1.listindex).left = 100

> Magic Star <
Avatar billede xfox Nybegynder
31. januar 2002 - 11:18 #3
Problemet er bare at combobox'en er på form2 og billederne er på form1. Så når jeg starter med at skrive :"Form1." kan jeg ikke referere til combobox'en på form2 midt i sætningen.
Avatar billede xfox Nybegynder
31. januar 2002 - 11:21 #4
"Select case" kan også bruges, men da jeg har over 100 billeder vil jeg helst undgå denne metode.
Avatar billede martin_moth Mester
31. januar 2002 - 12:19 #5
Kan du ikke bruge det rasmuss skriver?

sub combo1_change()
  form1.billed(form2.combo1.listindex).left = 100
end sub

Eller hvis det volder problemer, så

sub combo1_change()
  dim dummy as integer
  dummy=combo1.listindex
  form1.billed(dummy).left = 100
end sub

Jeg kan ikke se hvorfor det ikke skulle kunne virke, hvis ellers index for billede passer med index for combo'en.
Avatar billede xfox Nybegynder
31. januar 2002 - 12:42 #6
Den laver fejl når jeg referere til et object på form2 inde i en reference til form1. Det er der problemet opstår.
Avatar billede dimle Nybegynder
31. januar 2002 - 13:47 #7
Jeg ville gøre det sådan at du kalder alle billederne på form1 det samme og laver indexer ud af dem, og navnet kan du så sætte ind i feltet: Image1(i).Tag! Så ser koden sådan ud!


Sub Combo1_Click()
    Dim i as Integer
    For i = 0 To Form1.Image1.UBound
        If Form1.Image1(i).Tag = Combo1 Then
            Form1.Image1(i).Left = 100
            Exit For
        End If
    Next i
End Sub


Det er en lidt tidskrævende måde du gør det på jo - Det ville være meget mere optimalt hvis du gav billednavnene i databasen et ID og satte det ind i feltet Combo1.ItemData(i) og gav billeder samme Index eller Tag - så kunne du lave et direkte opslag! Hvis Du vil ha det så kan du jo skrive igen!!! Men ovenstående virker i hvert fald!!
Avatar billede rasmuss Nybegynder
01. februar 2002 - 09:34 #8
Det skal virke!

Hvis ikke det virker så kunne du jo prøve at lave det helt forfra!
Det er nogen gange at det virker.

Prøv dette:

opret:
(form1)
(combobox)
(commandbutton)

opret:
(form2)
(image) kald det billede og giv det index nummeret 0. Kopier det og sæt de andre billeder ind.

Start med at skrive:

- I form1_load -
for n = 0 to form2.billede.listcount - 1
  combo1.additem form2.billede(n).list(n)
next n

- I command1_click -
form2.show
for n = 0 to form2.billede(n).listcount - 1
form2.billede(n).visible = false
next n

form2.billede(combo1.listindex).visible = true


-------------------------------------

Det kunne jo være en måde at lave det på!

Hvis ikke det virker kan du bare skrive din e-mail addrsse og så sender jeg dig programmet!!!

Held og lykke!

MVH

> Magic Star < Rasmus
Avatar billede xfox Nybegynder
04. februar 2002 - 08:44 #9
Tusinde Tak for alle svarene. Jeg har brugt Dimle's ide med at hente et ID fra en database og fået det til at virke.
Avatar billede dimle Nybegynder
16. maj 2002 - 09:33 #10
Skal jeg så ikke have pointene?? c",)
Avatar billede xfox Nybegynder
16. maj 2002 - 10:00 #11
Jeg brugte
Avatar billede xfox Nybegynder
16. maj 2002 - 10:03 #12
Fuck, nu har jeg givet point til den forkerte. Kan jeg ikke give dig dimle point på en anden måde?
Avatar billede dimle Nybegynder
16. maj 2002 - 10:06 #13
Jo du kan oprette et nyt spørgsmål med pointene, så laver jeg et svar og så kan du give mig dem!!! :o)
Avatar billede dimle Nybegynder
16. maj 2002 - 10:07 #14
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