- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- Magga: PLEX: multimédia az egész lakásban
- Lalikiraly: SÜNI energiaital.
- Tomasz72: Ventilátor upgrade
- btz: Internet fejlesztés országosan!
- MasterDeeJay: SATA to SAS adapter
- hdanesz: Hyundai Ioniq 28 kWh 2018 2. felvonás
Új hozzászólás Aktív témák
-
Homer
tag
Sziasztok!
Még csak a szárnyaimat bontogatom programozás terén, és nem is ez a szakterületem, de a munkám során néha jól jönne némi programozástechnikai ismeret, ezért vágtam bele a fejszémet a VB-be. Egy olyan dolgot szertnék kérdezni tőletek amire nem konkrét forráskódot várnék megoldásként, inkább az elméleti háttere érdekelne a dolognak.Adott egy collection amiben kétféle adattípusú adatot tárolnék. Az egyik féle osztályból (kereszteljük őket mondjuk "A-típus"-ra) létrehozott objektum tartalmaz vagy 5-6 féle mezőt + pár eljárást és függvényt a kezelésükre. A másik osztály (fantáziadúsan, legyen mondjuk "B-típus") az A típusból van örköltetve viszont még plussz 5 adatot tartalmaznának az ebből képzett objektumok. A kétféle objektum egy kollekcióba gyűjthető, és a "TypeOf(object) Is A-típus" kifejezéssel megállapítható az adott elem mezőinek mivolta is. Ahhoz, hogy a feltöltött listát megjeleníthessem használnék egy Listview1 objektumot.
A lista elemeit fel tudom tölteni ehhez hasonló módon:
...
For each elem as object in kollekció
if typeof(elem) is Atípus then listview1.items.add(elem.mező_a)
...(elem.mező_b)
...
else
listview1...items.add(elem.méret1)
nextA kérdésem az lenne, hogy az ily módon feltöltött listview-ból hogyan tudom visszanyerni az eredeti objektum "helyét" a kollekcióban? Lehet hogy alapból rosszul gondolkodom és nem is így kéne hozzálátni a feladathoz. Már többféleképpen is próbáltam, de mindig zátonyra futok valahol. A gond akkor jelentkezik amikor kijelölök egy listaelemet és ki akarom törölni a kollekcióból. Arra gondoltam, hogy a törlési eljárásban deklarálok egy objektumot, aminek manuálisan visszatöltöm az adatmezőit és ezt az objektumot használom a beazonosításra.
így valahogy:
sub gomb1.click(...)handles gomb1.click
obj.mező1 = listview1.selecteditems(0).items.tostring
obj.mező2 = istview1.selecteditems(0).subitems(0).items.tostring
...(és így végig az összes mezőn)
...
törlés(obj)
end subsub törlés(mit as object)
kollekció.remove(mit)
end subNagy balgaságot követek el így? Van ennél egyszerűbb mód, azon kívül hogy adatbázist használnék? (Még addig nem juttotam el a könyvben :$
. Még egy dolog mielőtt valaki az index-ek használatán gondolkodna: A listview-ban emelkedő sorrendben szeretném megjeleníttetni az elemeket, ami azt eredményezi hogy pl a 100-adiknak beírt adat legelőre kerül 0-s index-el(!), viszont a kollekcióban pedig időrendi sorrend szerint vannak tárolva. Viszont ami egyszerűsíti a helyzetet az az, hogy egy objektum sem ismétlődhet a sorban.
Előre is köszönöm ha valaki válaszra méltatna és megérti a kérdésemet!
Új hozzászólás Aktív témák
Hirdetés
- Home server / házi szerver építése
- Kertészet, mezőgazdaság topik
- Az áremelések és a GTA VI késése miatt nem költekeznek a játékosok?
- OLED TV topic
- Milyen videókártyát?
- A fociról könnyedén, egy baráti társaságban
- Épített vízhűtés (nem kompakt) topic
- Melyik tápegységet vegyem?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Parfüm topik
- További aktív témák...
- Redmi Pad Pro, 6GB/128GB, még garanciális
- Honor 200 Pro 512GB, Kártyafüggetlen, 1 Év Garanciával
- Lenovo Thinkpad L14 Gen 4 -14"FHD IPS - i5-1335U - 8GB - 256GB - Win11 - 2 év garancia - MAGYAR
- Apple iPhone 14 PRO - 128GB - Deep Purple - 85% akkumulátor
- GOPRO Hero 11 BLACK akciókamera - különlegesség!!! Labs fw 01.20.70
- HP Laptop 15-fc0026nh (AY7E1EA)
- BESZÁMÍTÁS! MSI B450M R5 5500 16GB DDR4 512GB SSD GTX 1080Ti 11GB Rampage SHIVA Chieftec 700W
- BESZÁMÍTÁS! Asus TUF B550M R7 5700X 16GB DDR4 512GB SSD RTX 3060 Ti 8GB Rampage SHIVA FSP 700W
- ÁRGARANCIA!Épített KomPhone i5 12400F 16/32/64GB RAM RTX 4060 Ti 8GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7800X3D 32/64GB RAM RTX 5080 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest