NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
Frantisek Jesatko:7.5.2016 21:53

Zdravím mám takový problém mám MDI Form aplikace na něm mám statusbar v něm Progressbar a další Stautuslabel . A představa je taková při startu aplikace zavedu globalní proměnou a tu potom budu vypisovat v Labelu případně v progressbaru. No zápis do proměnné není problém ale následné zobrazení mi nejede ani za nic slušně řečeno. Je možné to takto řešit a jak přinutit prvky na MDI aby vypisovali co je v proměnné . Už jsem pročetl kde co ale Backgroundworker jsem zatím nepochopil a nic ostatního asi nefunguje díky za každou radu .

 
Odpovědět
7.5.2016 21:53
Avatar
Odpovídá na Frantisek Jesatko
Michal Štěpánek:7.5.2016 22:05

Trošku upřesni, co konkrétně si představuješ pod tím

zavedu globalní proměnou a tu potom budu vypisovat v Labelu případně v progressbaru

Dost dobře si nedokážu představit, jakou proměnnou bys chtěl zobrazit v progressbaru. V MDI Formu bych viděl jako reálné zobrazit např nějakou informaci o aplikaci, nebo přihlášeného uživatele, popř. datum a aktuální čas... Co jiného bys tam chtěl vypisovat?
Na použití Backgroundworkeru se podívej tady na video
https://channel9.msdn.com/…msaplikacich
z toho jsem ho pochopil i já (a to je co říct)

Nahoru Odpovědět
7.5.2016 22:05
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Frantisek Jesatko:7.5.2016 22:14

Pri startu programu si zavedu proměnnou string status druhou int progres . Tyto dvě proměnné si potom kdekoliv naplním. Informací třeba status = " Generuju tabulku xxx" a toto by jsem pak chtěl zobrazit ve statusbaru . Ikdyž ta samotná akce se již neděje na MDI ale na otevřeném childformu . To samé je pak u Prograssbaru provádím nějakou akci kde tu proměnnou int plním a zase na MDI leze progressbar. Nicméně toto mi nechodí .tak snad jsem to trochu rozepsal.

 
Nahoru Odpovědět
7.5.2016 22:14
Avatar
Odpovídá na Frantisek Jesatko
Michal Štěpánek:7.5.2016 22:23

Nějak mi nejde do hlavy, proč při akci v nějakém formu chceš zobrazovat info o té akci na MDI formu. To se přece týká toho konkrétního formu, podle mě si tím zbytečně přiděláváš starosti...

Nahoru Odpovědět
7.5.2016 22:23
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Odpovídá na Michal Štěpánek
Frantisek Jesatko:8.5.2016 7:34

Programuju svuj informacni system a mdi form je takovy framework kde se otviraji gridy s daty a nad nima pak editacni form . Kdyz dam ulozit data nebo jinou akci tento form uz tam neni protoze se zavre . Tak proto . Jinak ale libilo by se mi i treba progressbar ve formu kdyby se otviral nad vsim topmost . To ale je stejny princip asi.

 
Nahoru Odpovědět
8.5.2016 7:34
Avatar
Odpovídá na Frantisek Jesatko
Michal Štěpánek:8.5.2016 9:37

Sice chápu, čeho bys chtěl docílit, ale i tak si myslím, že si to zbytečně zesložiťuješ. Když dělám nějakou akci, tak form uzavírám až po dokončení té akce, protože tu akci vyvolal "ten" form. kdybych ho chtěl zavřít dřív, akce mi to stejně nedovolí, bo bych ji tím přerušil. Proto průběh akce zobrazuji na "tom" formu, ne na hlavním. A kdybys to netvořil ve WinForms, ale ve WPF, byl bys překvapen, jaká kouzla se tam dají páchat... O volbě jazyka tě přesvědčovat nebudu, to je každého věc, nicméně si neodpustím moji poznámku. Začínal jsem s VB.NET, protože je přívětivější pro člověka a lépe se mi to chápalo. Po čase jsem ale zjistil, že poměr tutoriálů na VB a C# vychází mnohonásobně lépe pro C#, takže jsem se začal věnovat C#. Jaké bylo mé překvapení, když jsem po pár dnech zjistil, že je to v podstatě (až na pár drobností) stejné... a už jsem u C# zůstal. Pak jsem všude četl, že je WF mrtvé a že WPF je lepší. Inu zkusil jsem i to a vzhledem k tomu, že na internetu je spousta návodů, naučil jsem se dělat ve WPF a k WF se vracím jen kvůli tomu, že potřebuji občas něco poupravit na starším projektu... Zkus to, uvidíš, že WPF je opravdu technologicky mnohem, mnohem dále... Uf to jsem se zase rozepsal... :-D

Nahoru Odpovědět
8.5.2016 9:37
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Odpovídá na Michal Štěpánek
Frantisek Jesatko:8.5.2016 12:52

No teda na wpf koukam jednou jsem otevrel a zase zavrel. Ja jsem delal leta visual foxpro pak jsem hledal neco co bude pokracovatel neexistuje . Takze jsem zacal s platformou realbasic jednoduche rychle ale konec podpora cestiny a tisky takze jsem to opustil. Testnul jsem prvni aplikaci ve WF. A to se zda dobry ale vsude ctu jak je to stare no tak zase zacnu asi od nuly . Uz mam svuj system navazanej na abra flexibee tak se mi logicky nechce opoustet wf .

 
Nahoru Odpovědět
8.5.2016 12:52
Avatar
Odpovídá na Frantisek Jesatko
Michal Štěpánek:8.5.2016 13:22

Chápu, ale zkus si projít zdejší tutoriál na wpf a uvidíš, že spousta věcí se dá dělat pohodlněji...

Nahoru Odpovědět
8.5.2016 13:22
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
Frantisek Jesatko:11.5.2016 21:08

Tak jsem se dva dni seznamoval s WPF určitě se dá spousta věcí udělat lepší ale návrh formů je naprosto katastrofální při přechodu z WF vůbec nechápu jaký smysl má tzv. propojovací vrstva kde se napojuje výkonný kod na vizualní stranu když se v ní navíc definuje i vzhled . Ale to je jedno asi na to dá zvyknout určitě je to i lepší. Můj soft je napsan ve WF a stálo by spoustu usilí ho překlopit do WPF myslenka je ze casem k němu vytvořim app do Androidu .
Nicméně potřeboval bych tedy radu do WF edituju data na formu zadám tisk otevře se okno s Progressbarem jenže na tomto okně se progressbar nehýbe.
Problém je v tom že otevřu form a v hlavním vlákně programu běží plnění reportu . Po naplnění reportu se form s Progressbarem zavře. Dal jsem tedy progressbar a jeho obsluhu do backgroudworker a stejně nic.
mohl by někdo pomoci jak na to ?
Díky

 
Nahoru Odpovědět
11.5.2016 21:08
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 9 zpráv z 9.