Kezdőoldal » Számítástechnika » Programozás » C#: Hogyan lehet billentyűvel...

C#: Hogyan lehet billentyűvel "működtedni" valamit?

Figyelt kérdés
Úgy értettem, hogy mondjuk van egy kép, elhelyezkedése, 220, 140. Ha megnyomom a bal nyilat, vagy akár a D-t, akkor már 230, 140-en fog elhelyezkedni.
2012. júl. 3. 17:57
1 2
 11/17 anonim ***** válasza:
32%

Fogadjunk for-os megoldással csináltad?

ha igen, akkor az a baja, hogy a forciklus nem szereti a ReadKey-t ReadLine-vel csináld és sikerülni fog. Én még mindig a timer-es megoldást javaslom, hisz az a legjobb. (ha azzal csináltad, akkor is tedd át ReadLine-re.


(UI.: Ha lehet itt adni valami karmát vagy valamit, azt kérlek +-old. Köszi, remélem segítettem!)

2012. júl. 5. 13:07
Hasznos számodra ez a válasz?
 12/17 A kérdező kommentje:
Nem, a timer-es megoldással csináltam, hisz nekem többször kell a gomb lenyomás. Am persze, adok +-okat most is, de viszont még mindig nem jó. :s
2012. júl. 5. 13:27
 13/17 A kérdező kommentje:

private void timer1_Tick(object sender, EventArgs e)

{

ConsoleKeyInfo keyInfo = Console.ReadKey();

if (keyInfo.Key == ConsoleKey.DownArrow)

{

pictureBox1.Visible = false;

}

}


Így van megcsinálva, és erre adja a hibát amit leírtam.


Cannot read keys when either application does not have a console or when console input has been redirected from a file. Try Console.Read.


[link]

2012. júl. 5. 13:32
 14/17 A kérdező kommentje:
ReadLine: Cannot implicitly convert type 'string' to 'System.ConsoleKeyInfo'
2012. júl. 5. 13:36
 15/17 A kérdező kommentje:
Akkor tudod hogy mi a hiba ebben?
2012. júl. 5. 22:26
 16/17 A kérdező kommentje:

Van Skype-od? Csak addig kéne amíg segítenél ezt megoldani, aztán törölhetnél! Csak egy kis ideig. Ha oké, vegyél fel: ryuuzaki723

Ha nem, akkor tipp hogy mi a hibája?

2012. júl. 6. 12:25
 17/17 Pj0tr ***** válasza:

Mi a tökért akarsz egy WinForms alkalmazásban Console objektumot használtatni a szerencsétlen kérdezővel??


A form objektumba kell beírnod a következő függvényt:

protected override bool ProcessCmdKey(ref Message msg, Keys keyData)

{

switch (keyData)

{

// balra nyil

case Keys.Left:

// a gomb

case Keys.A:

// Shift + a gomb

case Keys.Shift | Keys.A:

// Mozgatás balra

return true; // lekezelted-e az "eseményt"

// a többi iránnyal ugyanígy

default:

return base.ProcessCmdKey(ref msg, keyData);

}

}

2012. júl. 9. 12:13
Hasznos számodra ez a válasz?
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!