Hej, > lbl_Box_<b>area</b>_00.text = "något", men fungerar inte, tips? >> Och kan man ge en vektor ett index? Testade följande men gick inte :( > Jo, kan man inte på något sätt kombinera en hashtable och vektor för att komma åt lbl_Box_top_00... osv? Det gick det med hashtable och jag matade själv in alla labelsVariabler, lbl_Box_top_00... Och vektor med index hur?
har en del labels med namnet
lbl_Box_top_00 -> till lbl_Box_top_02
lbl_Box_mid_00 -> till lbl_Box_mid_02
lbl_Box_bot_00 -> till lbl_Box_bot_02
Det jag vill/undrar är hur man kan komma åt dem via en variabel som varaiera mellan top, mid och bot
T.ex.
Dim area As String = New String("top")
lbl_Box_<b>area</b>_00.text = "något", men fungerar inte, tips?
---
Och kan man ge en vektor ett index? Testade följande men gick inte :(
Dim arr() As String
arr("hej") = "hello"
MsgBox(arr("hej"))
Sv: Variabler, lbl_Box_top_00... Och vektor med index hur?
Det vill du inte ;) Fulhackad kod med taskig prestanda gör ingen glad ;)
> Och kan man ge en vektor ett index? Testade följande men gick inte :(
Inte en vektor, men väl ett Dictionary (eller vad det nu heter i 1.1), HashTable tror jag det heter förresten...
HashTable ht;
ht = new HashTable();
ht.Add("apa", 123);
ht["mu"] = "bä";
MessageBox.Show(ht["apa"]);
Sv:Variabler, lbl_Box_top_00... Och vektor med index hur?
> Inte en vektor, men väl ett Dictionary (eller vad det nu heter i 1.1), HashTable tror jag det heter
Tackar, ska testa det sen! :)
>> lbl_Box_<b>area</b>_00.text = "något", men fungerar inte, tips?
> Det vill du inte ;) Fulhackad kod med taskig prestanda gör ingen glad ;)
Har du något exempel? Är alltid kul att se :)
Jo, kan man inte på något sätt kombinera en hashtable och vektor för att komma åt lbl_Box_top_00... osv?
Dim ht As HashTable = new HashTable()
ht("top") = New label(){lbl_Box_top_00, lbl_Box_top_01, lbl_Box_top_02}
Sv: Variabler, lbl_Box_top_00... Och vektor med index hur?
Nja... Det du kan göra är ju att manuellt mata in varenda label i din hashtable. Vad jag dock är fundersam på är var alla dina labels kommer ifrån. Är det flera likadana? Isf. så skulle jag generera dem när programmet körs istället och köra det i en loop.
> Har du något exempel? Är alltid kul att se :)
Usch, kan inte reflection-apierna i huvudet, men ungefär såhär:
1) Hämta type för klassen (aka. formuläret)
2) I typen söka efter det aktuella fältet
3) Hämta värdet ifrån fältet och skicka med vilket objekt som ska genomsökas efter fältet
Prestandan lär inte bli kul. Sök på google efter reflection.Sv:Variabler, lbl_Box_top_00... Och vektor med index hur?
Resultatet blev
Dim ht As HashTable = new HashTable()
ht("top") = New label(){lbl_Box_top_00, lbl_Box_top_01, lbl_Box_top_02}
ht("mid") = New label(){lbl_Box_mid_00, lbl_Box_mid_01, lbl_Box_mid_02}
ht("bot") = New label(){lbl_Box_bot_00, lbl_Box_bot_01, lbl_Box_bot_02}
Och det fungerar perfekt!
> Usch, kan inte reflection-apierna i huvudet, men ungefär såhär:
Hehe, låter krångligt :P
Men mitt problem är nu löst! Och jag tackar för hjälpen! :D