Keresés
Hírlevél
 
Kiemelt témák
»Hogy viszonyul ehhez a család?
»Legjobb metodika emberi relációk tárolására
»A programozó hibája, hogy törik a programját?
»Jogosultság kezelés mezőszinten
Állás/munka
»Wordpress szakértőt keresünk
»Kamu álláshirdetők listája
»Front-end fejlesztő / Sitebuilder
»DataStore Developer
»PHP programozó, webfejlesztő munkát keres
» több téma
Tudástár
?Input mezőből visszakapott adat probléma
Oldalon keresés 8x írja ki az eredményt
?XML-ből sok szövegmező
TinyMCE és az ékezetek
?Rengeteg hasonló kép betöltése gyorsan (PHP)
Ékezetes kar. nem minden táblában jól
?Shelltreeview gond
Grafikon rajzolás probléma
?Onclick= php függvény
?Egyenes megrajzolása
?Access-ből adott xml fájl kinyerése
Listázás időpont szerint
Exportálás változó könyvtárba
*Link eredményének kiolvasása
Imagemapre képet
» több téma
Társalgó
»A programozásból jól meg lehet élni?
»MFC tanulás
»Könyvet adok-veszek
»Hogy viszonyul ehhez a család?
»Nintendo wii
»Letölthető az új Rad Studio XE és Delphi XE
»Weblap véleményezés
»Játékmotor elmélet
»Informatikai bulvárlap
»Delphi-ről C++-ra váltás
» több téma
ASP  |  C#  |  C++  |  CSS  |  Delphi  |  Flash  |  HTML  |  Java  |  JavaScript  |  Pascal  |  Perl  |  PHP  |  Python  |  Visual Basic  |  Visual C++  |    »    

Tudástár

»

Változó számú window form futás időben

»

Változó számú window form futás időben

nyitotta: bumbi0, idő: 2010.03.14., moderátor: moderator
  Értesítés változás esetén Felvétel kedvencekhez Küldés emailben Nyomtatható verzió

Kategóriák:Programozási nyelvek » C#
Programozási platformok » .NET programozás

Sorrend:
Időzóna:
Blokkméret:
Futás időben változó számú window formra lenne szükségem. Van egy bizonyos program, és ahány példányban fut, nekem is ugyan annyi formot kéne létrehoznom. Ha egy példányt bezárnak, akkor a hozzá tartozó formnak autómatikusan be kell záródnia, ha nyitnak egy újabb példányt, akkor egy új formnak létre kell jönnie. Hogyan tudom ezt megvalósítani?

Előre is köszönöm!
Amit megnyitnak, azt te írod szintén?
Ezt nem értem
Van egy bizonyos program, és ahány példányban fut,

Kérdés: Azt a "bizonyos" programot is te írtad? (Te írod?)
Nem, külső program.
Futás időben változó számú window formra lenne szükségem.

ArrayList
Csinálsz egy Dictionary -t ami kulcsként a process id -ját és értékként egy formot fog tárolni.

var d = new Dictionary<int, Form>();

Lekéred bizonyos időközönként pl 100ms a futó folyamatok listáját.
Lekéred a dictionary -ban szereplő kulcsokat.

var list = d.Keys.ToList();

Ha nem szerepel a dictionary-ban az adott id, akkor felveszed. Valahogy így.

d.Add(p.ID, new Form());

Ha szerepel a dictionary -ban akkor eltávolítod a listából. És a legvégén megnézed, hogy mi maradt a listában(csak olyan processz id -k maradhatnak, amelyek már nem léteznek a windowsban csak a dictionary-ban). A listában maradó id -k hoz tartozó értékeket(Formok) lekéred a dictionary-ból. Meghívód az értékekre a dispose() metódusukat. Ezután már eltávolíthatod a dictionary az adott kulcs érték párt.
Így tudod lekérni csak azokat a processzeket amelyekre szükséged van. Ez pl egy tömböt ad vissza a notepad futó példányairól.
Process.GetProcessesByName("notepad");
Az ID-t tárolhatja a Form egy adattagjaként is. És akkor nincs továbbra is elegendő az ArrayList megoldás.
Basszus te miért vagy megáldva folyton ezzel az ArrayList el? :D. Még csak nem is generikus így aztán folyton mehet a castolgatás.
Bizony. Nekem is nagyon bántja a szememet. Sima List<T> sokkal jobb. A folytonos castolgatás értelmetlen, és sok esetben memóriapazarlás is.
Itt egy nagyon jó cikk erről: http://blogs.msdn.com/joshwil/archive/2004/04/13/112598.aspx

Szóval inkább ne reklámozd a rossz megoldásokat ;)

Üdv,
Hix

szerk.:
még egy hasznos olvasmány - http://bytes.com/topic/c-sharp/answers/643286-arraylist-vs-list
Belépés
E-mail cím:
Jelszó:

RSS források
-Hírek
-Cikkek
-Fórumok
-Állás/munka
Top pontgyűjtők
»Micu1.030
»Interlock280
»mezofi150
»Pitta_100
»Frostech0100
»szbzs.2100
»Riha60
»Akhiles50
»mrchandra50
»Bakter50
Top wikieditorok
»Sting
»Doi
»FlamingClaw
»Argathron
»Csaboka2
»Vodka
»Joexy
»Ivn
»Balucinho
»Kelemzol
» ugrás a wikire
A nap kifejezései
»Algoritmus
»Hogyan kezdjem el
»Perl
» ugrás a wikire
Hírek
»Megérkezett a PostgreSQL 9.0 kiadásra jelölt változata
»Letölthető az új Rad Studio XE és Delphi XE
»Function-X digitális művészeti találkozó és demoscene party
»Webfejlesztőknek szóló közösségi oldalt indított a Microsoft
»Letölthető a hardvergyorsított Chrome 7 első fejlesztői kiadása
» több hír
PC Fórum hírek
»Itt az első kép az AMD nyolcmagos processzoráról
»"Szuperdizájnos" érintő-egeret mutatott be a Microsoft
»Szabadalmaztatta a számítógép kikapcsolását a Microsoft
»Vírusriadót váltott ki a webezőknél a Google
»Ingyen iWiW-ezhetnek mobiljaikról a T-Mobile-osok
»Automatikusan kiválogatja legfontosabb leveleink a Google
»OOo4Kids - ingyenes Office csomag gyerekeknek
»Új, gyorsabb Core i3 és Pentium processzorokat jelentett be az Intel
Tagi blogok
»PSP
»Első Programozó
»USB
»PHP, mint sablonmotor egyszerűen