Mega Code Archive

 
Categories / C# / Development Class
 

Noice Maker

/* Code revised from chapter 1 GDI+ Custom Controls with Visual C# 2005 By Iulian Serban, Dragos Brezoi, Tiberiu Radu, Adam Ward  Language English Paperback 272 pages [191mm x 235mm] Release date July 2006 ISBN 1904811604 Sample chapter http://www.packtpub.com/files/1604_CustomControls_SampleChapter.pdf For More info on GDI+ Custom Control with Microsoft Visual C# book  visit website www.packtpub.com  */  using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Media; using System.IO;     public partial class Form1 : Form     {         private TinyNoiseMaker tinyNoiseMaker1;         private System.Windows.Forms.Button playButton;         private System.ComponentModel.IContainer components = null;         public Form1()         {             InitializeComponent();         }         /// <summary>         /// Clean up any resources being used.         /// </summary>         /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>         protected override void Dispose(bool disposing)         {             if (disposing && (components != null))             {                 components.Dispose();             }             base.Dispose(disposing);         }         #region Windows Form Designer generated code         /// <summary>         /// Required method for Designer support - do not modify         /// the contents of this method with the code editor.         /// </summary>         private void InitializeComponent()         {             this.playButton = new System.Windows.Forms.Button();             this.tinyNoiseMaker1 = new TinyNoiseMaker();             this.SuspendLayout();             //              // playButton             //              this.playButton.Location = new System.Drawing.Point(100, 22);             this.playButton.Name = "playButton";             this.playButton.Size = new System.Drawing.Size(82, 23);             this.playButton.TabIndex = 1;             this.playButton.Text = "Play My File";             this.playButton.UseVisualStyleBackColor = true;             this.playButton.Click += new System.EventHandler(this.playButton_Click);             //              // tinyNoiseMaker1             //              this.tinyNoiseMaker1.BackColor = System.Drawing.SystemColors.ControlLight;             this.tinyNoiseMaker1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;             this.tinyNoiseMaker1.FileName = null;             this.tinyNoiseMaker1.Location = new System.Drawing.Point(21, 68);             this.tinyNoiseMaker1.Name = "tinyNoiseMaker1";             this.tinyNoiseMaker1.Size = new System.Drawing.Size(268, 37);             this.tinyNoiseMaker1.TabIndex = 0;             this.tinyNoiseMaker1.PlayStart += new System.EventHandler(this.tinyNoiseMaker1_PlayStart);             this.tinyNoiseMaker1.PlayStop += new System.EventHandler(this.tinyNoiseMaker1_PlayStop);             //              // Form1             //              this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;             this.ClientSize = new System.Drawing.Size(316, 163);             this.Controls.Add(this.playButton);             this.Controls.Add(this.tinyNoiseMaker1);             this.Name = "Form1";             this.Text = "Form1";             this.ResumeLayout(false);         }         #endregion         private void tinyNoiseMaker1_PlayStart(object sender, EventArgs e)         {             Text = "Started Play of: " + tinyNoiseMaker1.FileName;         }         private void tinyNoiseMaker1_PlayStop(object sender, EventArgs e)         {             Text = "Stopped Play of : " + tinyNoiseMaker1.FileName;         }         private void playButton_Click(object sender, EventArgs e)         {             tinyNoiseMaker1.FileName = "C:\\WINDOWS\\Media\\tada.wav";             tinyNoiseMaker1.Play();         }         /// <summary>         /// The main entry point for the application.         /// </summary>         [STAThread]         static void Main()         {             Application.EnableVisualStyles();             Application.SetCompatibleTextRenderingDefault(false);             Application.Run(new Form1());         }              }          public partial class TinyNoiseMaker : UserControl     {         public event EventHandler PlayStart;         public event EventHandler PlayStop;         /// <summary>          /// Required designer variable.         /// </summary>         private System.ComponentModel.IContainer components = null;         /// <summary>          /// Clean up any resources being used.         /// </summary>         /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>         protected override void Dispose(bool disposing)         {             if (disposing && (components != null))             {                 components.Dispose();             }             base.Dispose(disposing);         }         #region Component Designer generated code         /// <summary>          /// Required method for Designer support - do not modify          /// the contents of this method with the code editor.         /// </summary>         private void InitializeComponent()         {             this.openButton = new System.Windows.Forms.Button();             this.playButton = new System.Windows.Forms.Button();             this.stopButton = new System.Windows.Forms.Button();             this.openFileDialog = new System.Windows.Forms.OpenFileDialog();             this.SuspendLayout();             //              // openButton             //              this.openButton.Location = new System.Drawing.Point(4, 4);             this.openButton.Name = "openButton";             this.openButton.Size = new System.Drawing.Size(82, 25);             this.openButton.TabIndex = 0;             this.openButton.Text = "Open";             this.openButton.UseVisualStyleBackColor = true;             this.openButton.Click += new System.EventHandler(this.openButton_Click);             //              // playButton             //              this.playButton.Location = new System.Drawing.Point(86, 4);             this.playButton.Name = "playButton";             this.playButton.Size = new System.Drawing.Size(82, 25);             this.playButton.TabIndex = 1;             this.playButton.Text = "Play";             this.playButton.UseVisualStyleBackColor = true;             this.playButton.Click += new System.EventHandler(this.playButton_Click);             //              // stopButton             //              this.stopButton.Location = new System.Drawing.Point(168, 4);             this.stopButton.Name = "stopButton";             this.stopButton.Size = new System.Drawing.Size(82, 25);             this.stopButton.TabIndex = 2;             this.stopButton.Text = "Stop";             this.stopButton.UseVisualStyleBackColor = true;             this.stopButton.Click += new System.EventHandler(this.stopButton_Click);             //              // openFileDialog             //              this.openFileDialog.FileName = "openFileDialog";             //              // TinyNoiseMaker             //              this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;             this.BackColor = System.Drawing.SystemColors.ControlLight;             this.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;             this.Controls.Add(this.stopButton);             this.Controls.Add(this.playButton);             this.Controls.Add(this.openButton);             this.Name = "TinyNoiseMaker";             this.Size = new System.Drawing.Size(250, 30);             this.ResumeLayout(false);         }         #endregion         private System.Windows.Forms.Button openButton;         private System.Windows.Forms.Button playButton;         private System.Windows.Forms.Button stopButton;         private System.Windows.Forms.OpenFileDialog openFileDialog;         protected virtual void OnPlayStart(EventArgs e)         {             if (PlayStart != null)             {                 PlayStart(this, e);             }         }         protected virtual void OnPlayStop(EventArgs e)         {             if (PlayStop != null)             {                 PlayStop(this, e);             }         }                           SoundPlayer soundPlayer;         public TinyNoiseMaker()         {             InitializeComponent();             soundPlayer = new SoundPlayer();         }         private void openButton_Click(object sender, EventArgs e)         {             if (openFileDialog.ShowDialog() == DialogResult.OK)             {                 FileName = openFileDialog.FileName;             }                          }         private void playButton_Click(object sender, EventArgs e)         {             Play();         }         private void stopButton_Click(object sender, EventArgs e)         {             Stop();         }         public void Play()         {             soundPlayer.Play();             OnPlayStart(EventArgs.Empty);         }         public void Stop()         {             soundPlayer.Stop();             OnPlayStop(EventArgs.Empty);         }         private string fileName;         public string FileName         {             get             {                 return fileName;             }             set             {                 if (fileName != value)                 {                     fileName = value;                     soundPlayer.Stream = new FileStream(fileName, FileMode.Open, FileAccess.Read);                 }             }         }     }