Diskuze: C# WFA Zrušení User Control
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 14 zpráv z 14.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
neznam cely kod ani co je WFA ale kod:
PictureBox newPB = new PictureBox();
Bitmap b = new Bitmap(...);
newPB.Size = new Size(20,20);
newPB.Image = b;
nedava smysl protoze PictureBox je komponenta a ta neni nikde "zobrazena"
WFA = Windows Forms Application
ten problém s tím pictureboxem už jsem vyřešil, ale pořád potřebuju
zjistit, jak danej form uzavřít.Co se kódu týče,tak tady je.
http://leteckaposta.cz/794369122
A jaktože, když dám isClicked na false, stejně se mi otevře to okno a když zavolám TestRuneM, zavřu MessageBox ručně a pak zavolám NewRuneM, tak se mi nejdřív otevře znova MessageBox a pak teprve daný Form? Funguje to i obráceně. Za odpověď předem děkuji.
private void ChooseYourAction(availableActions a)
{
switch(a)
{
case availableActions.NewRune:
isClicked = true;
a = availableActions.Nothing;
NewRuneM();
break;
case availableActions.TestRune:
a = availableActions.Nothing;
TestRuneM();
break;
case availableActions.ShowRune:
a = availableActions.Nothing;
break;
case availableActions.Exit:
Application.Exit();
break;
}
}
private void TestRuneM()
{
Random generateRune = new Random();
runeList[1] = 1;
runeList[32] = 5;
MessageBox.Show(runeList[32].ToString());
//generateRune.Next(runeList);
}
private void NewRuneM()
{
if(isClicked == true)
{
NewRune f = new NewRune();
isClicked = false;
f.Show();
}
}
Form se ti otevira 2x protoze mas 2x registrovany event handler na "Menu" MouseClick (jedenkrat v designeru a podruhe v konstruktoru)
Program se ti nezavira protoze mas spatne poradi v "MsClick" nejdriv musis zjitit co se ma stat a az pak to provest. Ted to mas naopak.
Dalsi vec je ze Random mej jen jednu instanci po celou dobu kdy ti bezi program.
A taky ArrayList se uz nepouziva protoze byl nahrazeny List<>.
Nějak jsem nepochopil co je na tom špatně, mohl by si mi to prosímtě lépe objasnit.
private void MsClick(object sender, MouseEventArgs e)
{
ChoosedAction(choosAction);
if (RctAddRune.Contains(e.Location))
{
choosAction = availableActions.NewRune;
}
else if(RctTestRune.Contains(e.Location))
{
choosAction = availableActions.TestRune;
}
else if(RctShowRune.Contains(e.Location))
{
choosAction = availableActions.ShowRune;
}
else if (RctExit.Contains(e.Location))
{
choosAction = availableActions.Exit;
}
this.Invalidate();
}
no pokud ctu spravne tak metoda(event) ChoosedAction spusti obsluhu udalosti
vyvolane tim ze uzivatel nekam kliknul. metoda je zalozena na datech v promene
choosAction, avsak data jsou do teto promene ulozena az po provedeni metody
ChoosedAction, takze se vlastne nikdy nestane to co by si uzivatel pral
.
tak jsem z toho udělal tohle a furt nic, buď jsem úplně blbej nebo mi to
cukroví leze na mozek 
private void MsClick(object sender, MouseEventArgs e)
{
if (RctAddRune.Contains(e.Location))
{
choosAction = availableActions.NewRune;
}
else if(RctTestRune.Contains(e.Location))
{
choosAction = availableActions.TestRune;
}
else if(RctShowRune.Contains(e.Location))
{
choosAction = availableActions.ShowRune;
}
else if (RctExit.Contains(e.Location))
{
choosAction = availableActions.Exit;
}
ChoosedAction(choosAction);
this.Invalidate();
}
a co presne ti teda nejde ?
po uprave co jsi tu ted postoval musi fungovat zavreni aplikace ale furt to
bude otevirat 2 okna. ty 2 okna to otevira protoze
"mas 2x registrovany event handler na "Menu" MouseClick (jedenkrat v designeru a
podruhe v konstruktoru)"
dík, tak jsem jenom slepej
a jakej je rozdíl mezi ArrayList a List<> ?
napr. http://stackoverflow.com/…t-in-c-sharp
zjednodusene receno je to to same stim rozdilem ze do jedne instance arraylistu nacpes vsecko jako napr. objekty, int cisla, doule cisla, stringy. zatimco do listu muzes nacpat jen to co je v te ostre zavorce. Kdyz mas List<int> tak tam muzes nacpat jen int kdyz List<string> tak jen stringy. Vyhodu to ma zaprve v tom ze to eliminuje chyby protoze vetsinou chces do jednoho arraylistu cpat jen jeden druh objektu. Druha vyhoda je vyhoda z hlediska vykonu pokud list obsahuje instance typu int/double/float z duvodu boxingu/unboxingu ktery neni u listu narozdil od arraylistu potrebny.
Zobrazeno 14 zpráv z 14.
