1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
private System.Windows.Forms.Label m_label;
private System.Threading.Timer m_myTimer;
private bool pendule_lance = false;
public void startPendule(System.Windows.Forms.Label label, int periode)
{
m_label = label; //le label que tu veux actualiser
TimerCallback timerDelegate = new TimerCallback(this.OnTimeEvent);
//Crée le timer qui lance le délégué
m_myTimer = new System.Threading.Timer(timerDelegate, null, periode, periode);
pendule_lance = true;
}
private void OnTimeEvent(Object objet)
{
// récupère ici les infos du harware
// cela prend environ 2,5 sec
// ensuite j'affiche le résultat dans un label :
m_label.Text = myHardware.DriverInfo.ToString(); // exemple
}
// à appeler dans le forme principale
public void stopPendule()
{
if (pendule_lance)
{
m_myTimer.Dispose();
}
} |
Partager