[C#] Form niet geselecteerd maar toch actief.

Status
Niet open voor verdere reacties.

jimowns

Gebruiker
Lid geworden
2 sep 2006
Berichten
341
Mijn probleempje.

Ben eigenlijk bezig met een applicatie te maken, wanneer mijn form niet geselecteerd is ( daar bedoel ik mee: gewoon geopend in u windowsbalk en geminimaliseert en niet geselecteerd )
Naderhand open ik mijn internet pagina, wanneer ik op de D4 knop druk dat het automatisch F12 drukt voor de script van site te bekijken en dat het op enter drukt en dat het achteraf op F12 terug drukt voor het af te sluiten.

De code dat ik tot hier toe heb, het zijn alleen de knoppen die worden ingedrukt en automatisch ingedrukt worden.
Maar ik zou echt niet weten als ik mijn form niet geselecteerd heb dat het nog acctief is.

Ik hoop dat iemand mij hierbij kan helpen.
Want ik heb op internet gezocht al heel der dagen en ik heb nog niets gevonden.

Code:
        public Form1()
        {
            InitializeComponent();
            this.KeyUp += new KeyEventHandler(OnKeypress);    //  Methode toevoegen 
        }

        private void Form1_Load(object sender, KeyEventArgs e)
        {
        }
        public void OnKeypress(object sender, KeyEventArgs e)   // Methode met parameter :  KetEventArg
        {
            label1.Text += "KeyCode:" + e.KeyCode.ToString();  // Leest in label welke      knop er geselecteerd word. 
            if (e.KeyCode == Keys.D4)    // Wanneer ik op 4 druk moet het starten
            {
                Thread.Sleep(1000);
                SendKeys.Send("{F12}");   // Drukt automatisch op F12
                Thread.Sleep(1000);          // 1000 millicende er tussen. 
                SendKeys.Send("{ENTER}");   // Drukt automatisch op Enter
                Thread.Sleep(1000);
                SendKeys.Send("{F12}");   //     F12
            }
        }



Mvg, Jim ;)
 
Laatst bewerkt:
Aha, je wilt globale hotkeys gebruiken, zodat de gebruiker buiten je programma om het programma dingen kan laten uitvoeren?

Dan heb ik hier een oplossing voor je :3

PHP:
[DllImport("User32.dll")]private static extern short GetAsyncKeyState(Keys vKey);

Dit roep je aan op de volgende manier:

PHP:
if (GetASyncKeyState(Keys.D4) != 0)
{
MessageBox.Show("Hey, alles goed. Je hebt zonet op D4 gedrukt..");
}

Dit zou je in een timer of in een nieuwe thread moeten stoppen met een interval van ong. 100 milisecondes om het te laten werken.

Succes :)
 
Echt waar dankuwel CaptainBri :D.
Ik was er overal naar aan het zoeken en had nog steeds niets gevonden.


Mvg, Jim ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan