Avatar billede Patrickfks Nybegynder
13. februar 2013 - 18:43 Der er 4 kommentarer

Simpelt program i C++

Hej.

Jeg prøver lige igen. Jeg skal lave et program der flytter 'cursoren' 4 forskellige steder hen på skærmen ved et tryk på 4 forskellige taster (fx op, ned, højre, venstre). Jeg skal bruge 'switch' og skal som en 5. mulighed have en default 'case' til at stoppe programmet.
Jeg har Win7. Det skal også siges at jeg er ret grøn, så vil gerne have en god forklaring fra en 'expert'.. :-)

På forhånd tak.
Avatar billede Cifrar Nybegynder
22. juli 2013 - 02:37 #1
Du kan evt. bruge Windows API (Application Programming Interface).

http://msdn.microsoft.com/en-us/library/windows/desktop/ms648394%28v=vs.85%29.aspx

if( GetAsyncKeyState( VK_UP ) &1 )
{
SetCursorPos( 10, 10 );
}
else if( GetAsyncKeyState( VK_DOWN ) &1 )
SetCursorPos( 20, 10 );
else if( ... )
SetCursorPos( 30, 10 );
else if( ... )
SetCursorPos( 40, 10 );

Jeg vil dog råde at du bruger RegisterHotkey :)
Avatar billede skoop Praktikant
17. februar 2014 - 19:40 #2
Skal dit hoved vindue være i fokus eller skal det kunne fungere udenfor vinduet?
Avatar billede skoop Praktikant
17. februar 2014 - 19:54 #3
I så fald hvis dit form window er i fokus

        private void Form1_KeyDown(object sender, KeyEventArgs e)
        {
            switch (e.KeyCode)
            {
                case Keys.Up:
                    Cursor.Position = new Point(Screen.PrimaryScreen.WorkingArea.Width / 2, 0);
                    break;
                case Keys.Down:
                    Cursor.Position = new Point(Screen.PrimaryScreen.Bounds.Width / 2, Screen.PrimaryScreen.WorkingArea.Height - 15);
                    break;
                case Keys.Left:
                    Cursor.Position = new Point(0, Screen.PrimaryScreen.Bounds.Height / 2);
                    break;
                case Keys.Right:
                    Cursor.Position = new Point(Screen.PrimaryScreen.Bounds.Width - 15, Screen.PrimaryScreen.Bounds.Height / 2);
                    break;
            }
        }
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester