Home
Browse all 647 examples
Download all 647 examples
Download sample chapters
Reviews
Errata
Acknowledgments
Links on .NET
Paradoxal Press

Buy directly from Paradoxal Press at $33.99 (Save 43%)



Category: Programming
Level: Beginner to seasoned
900 pages
ISBN-10 097661322-0
ISBN-13 978-097661322-0
$59.99 USA
$79.99 CANADA


Listing 18-12 extracted from chapter Windows forms applications


Listing 18-11<     > Listing 18-13


This listing can be compiled with the command line:
csc.exe /target:exe Example_18_12.cs
Errors: 0 Warnings: 0


Example_18_12.cs
using System.Drawing;
using System.Drawing.Drawing2D;
public class Form1 : System.Windows.Forms.Form {
   private void OnClick( object sender, System.EventArgs e ) {
      using Graphics g = CreateGraphics() ) {
         Bitmap m_Bmp = new Bitmap"Lena.jpg" );
         g.DrawImage( m_Bmp, new Point(55) );
         // Wait one second...
         System.Threading.Thread.Sleep( 1000 );
         int width = m_Bmp.Width;
         int height = m_Bmp.Height;
         Color cSrc, cDest;
         for int = 0; y < height; y++ )
            for int = 0; x < width; x++ ) {
               cSrc = m_Bmp.GetPixel( x, y );
               cDest=Color.FromArgb( 255-cSrc.R, 255-cSrc.G, 255-cSrc.B );
               m_Bmp.SetPixel( x, y, cDest );
            }
         g.DrawImage( m_Bmp, new Point(55) );
      }   
   }
   private System.Windows.Forms.Button button;
   private System.ComponentModel.Container components = null;
   public Form1() {
      InitializeComponent();
   }
   protected override void Dispose( bool disposing ) {
      if (disposing) {
         if (components != null) {
            components.Dispose();
         }
      }
      base.Dispose(disposing);
   }
   private void InitializeComponent() {
      this.button = new System.Windows.Forms.Button();
      this.SuspendLayout();
      this.button.Location = new System.Drawing.Point(20816);
      this.button.Name = "Click";
      this.button.TabIndex = 0;
      this.button.Text = "Click";
      this.button.Click += new System.EventHandler(this.OnClick);
      this.AutoScaleDimensions = new System.Drawing.Size(513);
      this.ClientSize = new System.Drawing.Size(292266);
      this.Controls.AddRange(new System.Windows.Forms.Control[] {
                             this.button});
      this.Name = "Form1";
      this.Text = "Form1";
      this.ResumeLayout(false);
   }
   [System.STAThread]
   static void Main() {
      System.Windows.Forms.Application.Run(new Form1());
   }
}	
Copyright Patrick Smacchia 2006 2007