2017-02-08 2 views
-1

Я застрял в своей программе. У меня есть эта часть кода:Как использовать переменную после нажатия кнопки

public void PacketArrival(ref IntPtr ContextHandle, ref int Cursor_Renamed, 
      ref int X , ref int Y , ref int Z, ref int Buttons, 
      ref int Pressure , ref int TangentPressure, ref int Azimuth, 
      ref int Altitude, ref int Twist, ref int Pitch , ref int Roll , 
      ref int Yaw,ref int PacketSerial, ref int PacketTim) 
{ 
    tmpl = System.Math.Abs(X); 

    if(tmpl != prgX.Value) 
    { 
     if(tmpl <= prgX.Maximum) 
      prgX.Value = tmpl; 
    } 
    tmpl = System.Math.Abs(Y); 
    if(tmpl != prgY.Value) 
    { 
     if(tmpl <= prgY.Maximum) 
     prgY.Value = tmpl; 
    } 
    tmpl = System.Math.Abs(Z); 
    if(tmpl != prgZ.Value) 
    { 
     if(tmpl <= prgZ.Maximum) 
     prgZ.Value = tmpl; 
    } 
    tmpl = System.Math.Abs(Pressure); 
    if(tmpl != prgPressure.Value) 
     prgPressure.Value = tmpl; 

    if(Convert.ToInt32(lblX.Text)!= X) 
     lblX.Text = X.ToString(); 
    if(Convert.ToInt32(lblY.Text)!= Y) 
     lblY.Text = Y.ToString(); 
    if(Convert.ToInt32(lblZ.Text)!= Z) 
     lblZ.Text = Z.ToString(); 
    if(Convert.ToInt32(lblPressure.Text)!= Pressure) 
     lblPressure.Text = Pressure.ToString(); 

    if (Pressure !=0) 
    { 
     File.AppendAllText("test2.txt", Pressure.ToString() + Environment.NewLine);    
    } 

    label1.Text = Pressure.ToString(); 

} 

Так что я хочу использовать давление, когда я кнопка мыши

private void button2_Click(object sender, EventArgs e) 
{ 
    label5.text = Pressure.ToString(); 
} 

Но я всегда получаю 0 в качестве значения. Извините, мой английский Давление появляется только в первой части кода, больше нигде. Как вы можете видеть, давление также записывается в файл, но когда я хочу его использовать после нажатия кнопки, он всегда показывает 0

p.s. label1 показывает правильное значение

+0

Где именно находится "prgPressure"? Как это определяется? Где это значение установлено? Где еще может быть установлено? Когда вы отлаживаете это, где конкретно теряется это значение? – David

+0

Также объясните, почему вы передаете множество параметров с помощью ref, когда: а) вы ничего не меняете, b) вы даже не используете их – Steve

+0

Извините, мой плохой, мне не нужен prgPressure. Мне нужно давление. – user3233536

ответ

-1

Я решил. Проблема была во второй функции. Мне нужно было использовать событие button_MouseDown.

Смежные вопросы