|
| Procedure til ændring af kontroler propert~ Fra : Per Jørgensen |
Dato : 26-04-07 07:51 |
|
Hej Nyhedsgruppe
Er den en kan hjælpe med mit problem.
Jeg har en form med omkring 50 image kontrolere, som parvis ligger oven på
hinanden.
Ved som ved klik skal chekke om XXX.Visible er "true", hvis ja skal den
sættes til "False" og YYY.Visible skal sættes til "True".
Da det er den samme funktion der skal gøre mange gange, vil der være mange
linjer at spare ved at lave det som en procedure, hvilket jeg også har
prøvet, men kan ikke få det til at virke.
Jeg har public procedure:
Public Sub SporSkifte(Skifte As String)
If Skifte.Visible = True Then
Skifte.Visible = False
End If
End Sub
som kaldes af
Private Sub Lige3_Click()
SporSkifte (Lige3.Name)
End Sub
Det giver en fejl, er der en der har en hint til hvad jeg gør forkert?
--
Med Venlig Hilsen
Per Jørgensen
| |
Desserten (26-04-2007)
| Kommentar Fra : Desserten |
Dato : 26-04-07 03:16 |
|
"Per Jørgensen" <pjn@ikkepost9.tele.dk(fjern ikke)> skrev i en meddelelse
news:46304bd5$0$14024$edfadb0f@dread15.news.tele.dk...
> Hej Nyhedsgruppe
>
> Er den en kan hjælpe med mit problem.
> Jeg har en form med omkring 50 image kontrolere, som parvis ligger oven på hinanden.
> Ved som ved klik skal chekke om XXX.Visible er "true", hvis ja skal den sættes til
> "False" og YYY.Visible skal sættes til "True".
Du skal lave dine image til et control array.......det gør du ved at lave en image box og
derefter kopiere den så du har har 50.....HUSK at sige ja til at lave Control Array når
den spørger ved 1. kopiering...............
Du får så en Index value som bestemmer hvad nummer i rækken du har klikket
på............resten er ren kode og hvis du skal have yderligere hjælp så sig til !!
Eks....
Lav en image box ved navn SkifteSpor og kopier så du har 3-4 stykker og sæt denne kode ind
i din form
Private Sub SkifteSpor_Click(Index As Integer)
MsgBox "Du har klikket på skiftespor nr: " & Index
End Sub
| |
Per Jørgensen (27-04-2007)
| Kommentar Fra : Per Jørgensen |
Dato : 27-04-07 08:29 |
|
Tak for hjælpen, det er en utrolig elegant løsning som giver endnu færre
program linjer end jeg havde forestillet mig.
Med Venlig Hilsen
Per Jørgensen
"Desserten" <FuckOff@SpamFucker.Zero> skrev i meddelelsen
news:4630915b$0$47532$edfadb0f@dread16.news.tele.dk...
>
> "Per Jørgensen" <pjn@ikkepost9.tele.dk(fjern ikke)> skrev i en meddelelse
> news:46304bd5$0$14024$edfadb0f@dread15.news.tele.dk...
>> Hej Nyhedsgruppe
>>
>> Er den en kan hjælpe med mit problem.
>> Jeg har en form med omkring 50 image kontrolere, som parvis ligger oven
>> på hinanden.
>> Ved som ved klik skal chekke om XXX.Visible er "true", hvis ja skal den
>> sættes til "False" og YYY.Visible skal sættes til "True".
>
> Du skal lave dine image til et control array.......det gør du ved at lave
> en image box og derefter kopiere den så du har har 50.....HUSK at sige ja
> til at lave Control Array når den spørger ved 1. kopiering...............
>
> Du får så en Index value som bestemmer hvad nummer i rækken du har klikket
> på............resten er ren kode og hvis du skal have yderligere hjælp så
> sig til !!
>
> Eks....
>
> Lav en image box ved navn SkifteSpor og kopier så du har 3-4 stykker og
> sæt denne kode ind i din form
>
> Private Sub SkifteSpor_Click(Index As Integer)
> MsgBox "Du har klikket på skiftespor nr: " & Index
> End Sub
>
>
>
>
>
>
| |
Desserten (27-04-2007)
| Kommentar Fra : Desserten |
Dato : 27-04-07 13:36 |
|
"Per Jørgensen" <pjn@ikkepost9.tele.dk(fjern ikke)> skrev i en meddelelse
news:4631a655$0$13948$edfadb0f@dread15.news.tele.dk...
> Tak for hjælpen, det er en utrolig elegant løsning som giver endnu færre
> program linjer end jeg havde forestillet mig.
>
> Med Venlig Hilsen
> Per Jørgensen
Glad for at kunne hjælpe....
Ja et control array sparer en for ca 49 / 50 dele kode i dit tilfælde....
| |
|
|