2013-11-01 2 views
0

У меня есть кнопка, которую вы должны щелкнуть, и она измеряет время реакции. В режиме 2 игроков (15 кликов для игрока 10 и 15 кликов для игрока 2). Время, которое я выдаю на двух лейблах. Но почему текст labelSummary2 - это текст другой метки? (Я хочу, чтобы получить reactiontimes в обеих этикетках, так что я смог сравнить их ...)Выход метки метки секундомера

public Form1() 
{ 
    InitializeComponent(); 
    _Stopwatch = new Stopwatch(); 
    _Stopwatch2 = new Stopwatch(); 
    _ReactionTimes = new List<TimeSpan>(); 
    _ReactionTimes2 = new List<TimeSpan>(); 
} 

private void txbStart_MouseClick(object sender, MouseEventArgs e) 
{  
    if (Spielzuege2 >= 16) 
    { 
     _Stopwatch2.Reset(); 
     _Stopwatch2.Start(); 
    } 
    else 
    { 
     _Stopwatch.Reset(); 
     _Stopwatch.Start(); 
    } 
} 

private void btnRot_Click(object sender, EventArgs e) 
{ 
    if (Spielzuege2 >= 16) 
    {    
     _Stopwatch2.Stop(); 
     _ReactionTimes2.Add(_Stopwatch2.Elapsed); 
     labelSummary2.Text = String.Format("Player 2: Current: {0:0.000} s Minimum: {1:0.000} s Maximum: {2:0.000} s", _ReactionTimes.Last().TotalSeconds, _ReactionTimes.Min().TotalSeconds, _ReactionTimes.Max().TotalSeconds); 
    } 
    else 
    { 
     _Stopwatch.Stop(); 
     _ReactionTimes.Add(_Stopwatch.Elapsed); 
     labelSummary.Text = String.Format("Player 1: Current: {0:0.000} s Minimum: {1:0.000} s Maximum: {2:0.000} s", _ReactionTimes.Last().TotalSeconds, _ReactionTimes.Min().TotalSeconds, _ReactionTimes.Max().TotalSeconds); 
    } 
} 

ответ

0

Заменить следующий код для вашего события нажатия кнопки:

private void btnRot_Click(object sender, EventArgs e) 
{ 
    if (Spielzuege2 >= 16) 
    {    
     _Stopwatch2.Stop(); 
     _ReactionTimes2.Add(_Stopwatch2.Elapsed); 
     labelSummary2.Text = String.Format("Player 2: Current: {0:0.000} s Minimum: {1:0.000} s Maximum: {2:0.000} s", _ReactionTimes2.Last().TotalSeconds, _ReactionTimes2.Min().TotalSeconds, _ReactionTimes2.Max().TotalSeconds); 
    } 
    else 
    { 
     _Stopwatch.Stop(); 
     _ReactionTimes.Add(_Stopwatch.Elapsed); 
     labelSummary.Text = String.Format("Player 1: Current: {0:0.000} s Minimum: {1:0.000} s Maximum: {2:0.000} s", _ReactionTimes.Last().TotalSeconds, _ReactionTimes.Min().TotalSeconds, _ReactionTimes.Max().TotalSeconds); 
    } 
} 
1

Вы используете _ReactionTimes список, чтобы заполнить обе метки, вместо того, чтобы использовать _ReactionTimes2 для labelSummary2:

labelSummary2.Text = String.Format("Player 2: Current: {0:0.000} s Minimum: {1:0.000} s Maximum: {2:0.000} s", _ReactionTimes.Last().TotalSeconds, _ReactionTimes.Min().TotalSeconds, _ReactionTimes.Max().TotalSeconds); 
Смежные вопросы