Pouze tento týden sleva až 80 % na e-learning týkající se C# .NET
Nauč se s námi víc. Využij 50% zdarma na e-learningové kurzy.
C# week
Avatar
Daniel Vítek
Redaktor
Avatar
Daniel Vítek:28.9.2012 8:48

Mám prográmek,a potřeboval bych tuto zkratku nějak vypnout,aby mi ten program nemohla zavřít...
Neví někdo jak na to ?
A ano, googlil jsem :D

Odpovědět
28.9.2012 8:48
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:28.9.2012 8:55

Znaky z klávesnice vstupují do procesu přes správce oken. Pokud někdo stiskne Alt-F4, správce oken to zachytí, ale procesu to nepředá. Místo toho procesu pošle signál k ukončení.

Tento signál můžeš zkusit zachytit a provést přímo akci, kterou jsi chtěl udělat přes Alt-F4.

Správce oken asi předělávat nebudeš.

Nahoru Odpovědět
28.9.2012 8:55
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Kit
Daniel Vítek:28.9.2012 8:58

Jak to zkusit zachytit ?

Nahoru Odpovědět
28.9.2012 8:58
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Kit
Daniel Vítek:28.9.2012 9:04

Napadlo mě to udělat nějak takhle

private void Form1_KeyPress(object sender, KeyPressEventArgs e)
        {
            switch(KeyPress)
            {
                case Keys.Alt+Keys.F4:
                    MessageBox.Show("Mě neukončíš :P");
                    break;
            }
        }

Nejspíš to bude blbost a navíc to stejně nejede

Error   1       The event 'System.Windows.Forms.Control.KeyPress' can only appear on the left hand side of += or -=
Nahoru Odpovědět
28.9.2012 9:04
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:28.9.2012 9:06

Nevím, jak to funguje ve Windows a v C#, ale zkus hledat slovo 'trap'.

Nahoru Odpovědět
28.9.2012 9:06
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Kit
Daniel Vítek:28.9.2012 9:07

Past ? :D

Nahoru Odpovědět
28.9.2012 9:07
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:28.9.2012 9:10

Správně. Signály se zachytávají do pastí.

Nahoru Odpovědět
28.9.2012 9:10
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Redaktor
Avatar
Nahoru Odpovědět
28.9.2012 9:10
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Kit
Daniel Vítek:28.9.2012 9:12

Nevíš,jestli se dá udělat aby ten program nepřekryla nabídka Start ?
TopMost mám zapnutý ale Start to překryje

Nahoru Odpovědět
28.9.2012 9:12
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Kit
Redaktor
Avatar
Odpovídá na Daniel Vítek
Kit:28.9.2012 9:17

Tak to už nevím vůbec. To bude něco silně specifického pro Windows.

Nahoru Odpovědět
28.9.2012 9:17
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Kit
Daniel Vítek:28.9.2012 9:18

Aha...:/
No ale stejně díky :)

Nahoru Odpovědět
28.9.2012 9:18
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Kit
Daniel Vítek:28.9.2012 9:21

A jak počítač přepnout do režimu spánku pomocí command line nebo C# ? :D

Vypnout vím ( shutdown -s a v C# http://www.itnetwork.cz/…i-pc-navyare )

ale ten spánek ne :(

Nahoru Odpovědět
28.9.2012 9:21
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Petr
Redaktor
Avatar
Petr:28.9.2012 9:22

V C# stačí reagovat na událost FormClosing u hlavního formuláře.

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    e.Cancel = true;
}
 
Nahoru Odpovědět
28.9.2012 9:22
Avatar
matesax
Redaktor
Avatar
Odpovídá na Petr
matesax:28.9.2012 9:27

A můžeš přidat minimalizaci/skry­tí:

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
    e.Cancel = true;
    Hide();/WindowState = FormWindowState.Minimized;
}
Editováno 28.9.2012 9:27
 
Nahoru Odpovědět
28.9.2012 9:27
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Petr
Daniel Vítek:28.9.2012 9:29

To už jsem vyřešil :)

Teď by mě zajímal ten spánek...

Nahoru Odpovědět
28.9.2012 9:29
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Daniel Vítek
Daniel Vítek:28.9.2012 9:31

Aha teď koukám u toho Navyare do komentářů :D

Application.SetSuspendState(PowerState.Hibernate, true, true);

Takže moment,jdu to testovat :D

Nahoru Odpovědět
28.9.2012 9:31
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na Daniel Vítek
Daniel Vítek:28.9.2012 9:38

Super,funguje :D

Nahoru Odpovědět
28.9.2012 9:38
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
matesax
Redaktor
Avatar
Odpovídá na Daniel Vítek
matesax:28.9.2012 9:40

Nemáš zač... (Můj program.) :)

 
Nahoru Odpovědět
28.9.2012 9:40
Avatar
Daniel Vítek
Redaktor
Avatar
Odpovídá na matesax
Daniel Vítek:28.9.2012 9:43

jj všiml jsem si...dík :D

...sczdavosuv koment :D :D

Nahoru Odpovědět
28.9.2012 9:43
Na síti působím už pěknou řádku let. Pokud budeš něco potřebovat, písni mi, pokusím se ti poradit :)
Avatar
00
Člen
Avatar
Odpovídá na Daniel Vítek
00:28.12.2012 16:39

jak je to vypnutí? v tom zdrojáku jsem to nemohl najít

 
Nahoru Odpovědět
28.12.2012 16:39
Avatar
matesax
Redaktor
Avatar
matesax:28.12.2012 16:59

V eventu FormClosing dáš:

e.Cancel = true;

Nemáš-li Form aplikaci, tak to bude něco podobného...

 
Nahoru Odpovědět
28.12.2012 16:59
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 21 zpráv z 21.