private void mBackgroundWorker_DoWork( object sender, DoWorkEventArgs e ) { BackgroundWorker worker = e.Argument as BackgroundWorker; PixelInfo info = new PixelInfo(); while( true ) { if( Locked == false ) { Point mp = Control.MousePosition; info.Image = PixelSearch.CaptureScreenRegion( new Rectangle( mp.X, mp.Y, CaptureSize.Width, CaptureSize.Height ) ); info.Position = mp; info.Color = info.Image.GetPixel( CaptureSize.Width / 2, CaptureSize.Height / 2 ); worker.ReportProgress( 0, info ); } System.Threading.Thread.Sleep( 10 ); } }
private void mWorker_DoWork( object sender, DoWorkEventArgs e ) { PixelInfo info = new PixelInfo(); List<Bitmap> images = new List<Bitmap>(); while( true ) { if( Paused == true ) break; images.Clear(); for( int i = 0; i < 7; i++ ) { images.Add( PixelSearch.CaptureScreenRegion( new Rectangle( 21, 30 + ( i * 52 ), 120, 5 ) ).Clone() as Bitmap ); Color col = images[ i ].GetPixel( 0, 0 ); if( col != ColorHPFull && col != ColorHPEmpty ) images[ i ] = null; } mWorker.ReportProgress( 0, images ); System.Threading.Thread.Sleep( 250 ); } }