Neviete ako urobiť loader k Formu ???
Fórum › .NET
Loader pre form C#
To zonda : Pokus se lépe popsat svůj problém.
djanosik napsal:
To zonda : Pokus se lépe popsat svůj problém.
Pripojuji se. Co je to takovy 'loader' ?
Ako chcem aby ten program bežal bez zastavenia .
Chcem aby sa načítal celý program a potom by bežal bez sekania .Neviete ako to dosiahnuť ???
Nevím, pořád tě (alespoň já) absolutně nechápu.
Hm, zajímavé, tak třeba dynamické loadování dalších assembly, ve kterých ty formy budou (i s kódem)? Ale mám dojem, že .NET neumí uvolnit kód, který jednou načetl, takže by ti furt rostla spotřeba paměti. (toto jsem četl u kompilovaných regulárních výrazů)
To zonda : Stále ti tak docela nerozumím. Příčinou toho "sekání" (vlastně ne sekání, jen pomalejšího vykonávání kódu) může být JIT, to jest "kompilace právě v čas". To zanemená, že se IL kód nekompiluje najednou, ale až podle potřeby (např. když voláš nějakou metodu). Tomu se lze vyhnout vygenerováním nativního obrazu (ngen.exe) na cílovém PC (např. při instalaci).
Další příčinou "sekání" je GC. Při úklidu paměti se pozastaví běh vlákna/vláken aplikace. Ale to je prakticky nepostřehnutelné a těžko s tím něco uděláš.
Nebo snad potřebuješ něco jiného?
Nejsem jsem z toho zcela moudry ale doporucil bych si zaexperimentovat s komponentou BackgroundWorker. To by mozna mohl byt takovy "loader na pozadi"...
Ak som ho správne pochopil, chce aby sa mu celý program so všetkých čo sa bude používať načítal už pri spustení, a potom fungoval bez seknutia. Čiže skôr hra a nie program, aspon podla toho čo si myslím, nevidel som veľa sekajúcich programov :D
a jeje - to ja jich videl :-)w3q napsal:
... nevidel som veľa sekajúcich programov :D
tak neviem ja som videl dosť veľa sekajúcich programov !!
a ved to je jasné nie ???
Preloader k programu .
Niečo takéto ale v C#:
http://flash.jakpsatweb.cz/index.php?page=preloader
Ale ako čítam tak to sa v C# asi nedá :( .
Aj ked stým BackgroundWorker by to asi šlo ale neviem ako to mám urobiť hľadal som niečo na
googli ale nič .
To zonda : Ne, nic takového, co je zmíněno na odkazované stránce není v samotném C# potřeba. Bohužel jsi nám stále nepopsal s čím konkrétně máš vlastně problém. Chceš po nás jakejsi loader a my stále nevíme, co to má vlastně dělat (hádám, že s modemovou linkou problém nebude).
No hl. problém spočíva v tom že každý pc má neakú ram pamäte .No a ja chcem ten program mať na pc ktoré máju max. ram pamät 512MB .No a chcem že či by mi loadre nepomohol aby mi to nešlo tak pomaly v tom programe .
Ak sa mýlim a loader mi v tom nepomohol tak napíšte čo hej ???
To zonda : No to asi těžko. Paměti určitě neulehčíš tím, že si něco načteš dopředu (když to ještě není potřeba). Co je to za program? Zkus to lépe zoptimalizovat.
neboj windowsy to po minute neaktivity zoptimalizujou nahratim na disk... do "virtualni pameti"... pak kazdej MB v ram a prace s diskem znamena neuveritelne pomale obnoveni programu...
treba takovej firefox... kdyz to 100MB nacucne na disk a pak ho obnovis tak je to uz hodne znat.... klidne i nejaka ta sekunda
a pokud k tomu jeste neco kopirujes nebo mas treba ftp na kterym je vic lidi tak je to na minutu nez se to nahraje
To KIIV : No řekněme, že na XP to tak určitě fungovalo.
To djanosik : vistam se vyhejbam jak cert krizi :D
ale treba na linuxu sem mel rad ze dokud je volna ram tak na swap ani nesahnou... obzvlate roztomily to bylo prave u xp kde sem mel 2GB RAM, zaplej strankovaci soubor, obsazeno 400MB a stejne se vse cpali furt do nej jakmile sem to na minutu minimalizoval :)
Stran loaderu: jestli to chapu tak, ze potrebujes donacist data pres sit (z Databaze ?) Pak by nejjednodussi bylo. Nastartovat form bez nacitani dat, ale jako prvni znemoznit vstup uzivatele a nechat form "sedivy" a spustit prave ten BackgroundWorker, ktery by mel za ukol nacist data. Az by byla data nactena, tak by se mohlo umoznit uzivateli pracovat bez "sekani". Napada me hned nekolik dalsich zpusobu, ale tenhle je podle me nejjednodussi.
rudolf_franek : ee nemám tam žiadnu veľkú databázu :) Ale dík aj za to možno to niekedy viužijem .
djanosik : No je to program ktorý slúži na písanie maturitnej témy na našel škole :) . Vytvára to dosť rýchlo a efektívne
technologický postup k neakej súčiatke .Pomôže to maturantom ktorý budú mať viac času na to aby si to skontrolovali.
No a v čom je môj problém ,ktorý súvisí aj stím že to ide pomaly.
Ten program má taký dosť vážny problém a to každy technologický postup obsahuje niekoľko strán asi 15 a viac .
No a ja som chcel každú stranu oddeliť od seba .A dal som ich do jednotlivých hárkov . No a tie hárky my robia
mega problém . Najpr som to chcel dať do nástroja (tabcontrol) ,ale zistil som že ten neumožnuje poučiť vlastnosť
visable na jednolivé strany . Tak som si vytvoril vlastný tabconrol zložený z splitContainerov a toolStripov.
A ďalší problém bol ako urobiť to že ak slačíš tlačítko nová strana žeby ti to vytvorilo novú stranu. Vyriešil som že
som každú stranu vytvoril a dal som ju skryť .A preto je to také veľké .
Podľa mňa by sa to dalo zjednodušiť ale neviem ako . Každá strana je taká istá iba sa odlišujú názvami textboxou
a tlačidiel . Preto som založil vlákno :Dátový typ žeby sa to menilo samo a postupne .Ale to sa nedá ako som zistil.
NO a program tak bude obsahovať okolo 1000 textboxou veľa čo :) . A preto potrebujem to načítanie :) .Ako ja
mám 2 GB ram a ide to normálne ale v škole máme 512Mb ram . Tak neviem ako to bude tam .
Ešte ten program nemám dokončený som asi v polovici . Tak ak máte neaké dobré nápady tak napíšte možno
niečo z toho použijem .
Ak chcete vidieť ako vyzerá tak tu ju :
http://uloz.to/1088311/Test.exe
Ale niektoré funkcie nefungujú .
Tak jsem to zkusil, udělal jsem screenshot, ať to ostatní nemusí stahovat - viz příloha. No pokud jsem to dobře pochopil, tak tam bude těch stran nahoře hodně? Tudíž by tam potom bylo hafo moc těch textboxů? Potom by to šlo vyřešit tak, že by sis ta všechna data pamatoval v nějakém poli, odděleně od GUI (což je obecně dobrý nápad oddělovat data od GUI) a všechny textboxy by tam byly jen jednou. Když by uživatel kliknul na Strana 34, data by se přečetla z toho pole a vyplnila do textboxů. Když by kliknul na jinou stranu, zase by se tam vyplnila jiná data.
Souhlasim !Quiark napsal:
... Potom by to šlo vyřešit tak, že by sis ta všechna data pamatoval v nějakém poli, odděleně od GUI (což je obecně dobrý nápad oddělovat data od GUI) a všechny textboxy by tam byly jen jednou. Když by uživatel kliknul na Strana 34, data by se přečetla z toho pole a vyplnila do textboxů. Když by kliknul na jinou stranu, zase by se tam vyplnila jiná data.
HHAAAA to to som hľadal . Dííík fest lebo to by ma nenapadlo :P .
Dííík ušetril si my veľa veľa práce :D.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
JS player + loader — založil R3sidento
CHYBA V PHP phpshield loader-prosim o pomoc — založil Michael
Form vs php — založil Paja2
HTTPS form — založil stanke
Moderátoři diskuze