po kliknięciu myszą wartość pola wzrasta o 1, jak zrobić aby wartość rosła gdy przycisk myszy jest wciśnięty. np. ustawiając pole na 0, uzytkownik chce osiągnąć wartość 100 - musiałby 100razy kliknąć co jest po prosu złe. chcę aby wartość pola rosła gdy jest wcisniety przycisk ( jeśli krótko to mało urośnie, im dłużej wciska tym wieksza wartość osiągnie ).
typowy Click na buttonie, lub MouseLeftButtonDown sprawia, że wartość wzrasta o 1. jak uzyskać rezultat opisany wyżej ?
0
1
Co sądzisz o takim rozwiązaniu? tutaj działa to na left click, right click, scroll i pewnie jeszcze te boczne, ale logika jest taka sama
W sumie wystarczy Ci dodać ifa który sprawdza czy użyty przycisk to np. MouseLeftButton.
public static bool mouse_leftclick_isUsed = false;
private async void Form1_MouseDown(object sender, MouseEventArgs e)
{
mouse_leftclick_isUsed = true;
while (mouse_leftclick_isUsed)
{
score++;
DisplayedScore.Text = score.ToString();
await Task.Delay(100); /// prędkość przyrostu punktów
}
}
private void Form1_MouseUp(object sender, MouseEventArgs e)
{
mouse_leftclick_isUsed = false;
}
0
myślałem, że jest do tego jakiś oddzielny event, ale dzięki za pomysł spróbuje w ten sposób :)