C#-ban hogy lehet azt, hogyha egyszerre lenyomok 2 gombot, valami történjen?
Én úgy próbálkoztam, hogy
if (keyData == Keys.K && keyData == Keys.J)
De nem történt semmi...
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (e.Modifiers == Keys.Alt && e.KeyCode == Keys.A)
{
textBox1.Text = "Hii";
}
}
Ez csak akkor fog működni ha a form aktív,KeyPress eseménnyel nem működik, csak KeyDown és KeyUp.
Valamiért nem működik.:/
De azért azt legalább tudom, hogy KeyPress-el nem működik, majd próbálkozok. Azért megy a +.
De megnéztem úgy hogy
textBox1_KeyDown és úgy megy...
"Ez csak akkor fog működni ha a form aktív"
Ezt a mondatodat hogy érted?
Oké, megvan. Most meg az a hibája hogy nem fogadja el úgy, hogy mindkettő KeyCode.
Muszály úgy lennie hogy egyik
e.Modifiers == Keys.Shift
másik
e.KeyCode == Keys.K
különben nem csinál semmit...
Ok mivel jó kedvemben vagyok kicsit bővében kifejtem a dolgot.
Először mi az alap események
KeyDown = Amikor lenyomod a billentyűt
KeyPress = Amikor lenyomod a billentyűt majd leveszed róla az újod.
KeyUp = Amikor a lenyomott gomb -ról leveszed az újod.
Azért a KeyDown kell mert ha két gombot nyomsz le akkor jön létre az esemény tehát nyomva tartod a gombot.
KeyPress -nél nem tudod ugyanezt megcsinálni mind a 2 gombbal millisecundumra pontosan.
A másik dolog ne a forráskódba írd hanem hozd létre az eseményt, több helyre is beíródik az esemény nem csak ott ahol látod.
Tehát jobb oldalt a kis villámjel és ott keresd meg a KeyDown eseményt.
A másik fontos dolog, soha az éltben nem fogja érzékelni az eseményt ha nem a form van a fókuszban.
Na most jöjjön amit te akarsz.
private void Form1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
{
if (Keyboard.IsKeyDown(Key.D) && Keyboard.IsKeyDown(Key.A))
{
textBox1.Text += "+";
}
}
Referenciákhoz ad hozzá a WindowsBase -t és a PresentationCore -t.
Valamiért az using Windows.System.Input-ra hibát ad.
Ja és azt elmondanád hogy hogy kell referenciákat beírni?:s
Bocsi csak még kezdő vagyok.
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!