⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wordwrap.cs

📁 windows mobile 开发实例wi ndows mobile 开发实例
💻 CS
字号:
// WordWrap.cs - Word wrapping sample.
//
// Code from _Programming the .NET Compact Framework with C#_
// and _Programming the .NET Compact Framework with VB_
// (c) Copyright 2002-2004 Paul Yao and David Durant. 
// All rights reserved.

using System;
using System.Drawing;
using System.Collections;
using System.Windows.Forms;
using System.Data;

namespace WordWrap
{
   /// <summary>
   /// Summary description for Form1.
   /// </summary>
   public class FormMain : System.Windows.Forms.Form
   {
      private System.Windows.Forms.MainMenu menuMain;
      private System.Windows.Forms.MenuItem menuItem1;
      private System.Windows.Forms.MenuItem menuItem10;
      private System.Windows.Forms.MenuItem menuItem2;
      private System.Windows.Forms.MenuItem mitemTextDefault;
      private System.Windows.Forms.MenuItem mitemWindowBlack;
      private System.Windows.Forms.MenuItem mitemWindowDefault;
      private System.Windows.Forms.MenuItem mitemRectangleBorder;
      private System.Windows.Forms.MenuItem menuItem3;
      private System.Windows.Forms.MenuItem mitemRectangleYellow;
      private System.Windows.Forms.MenuItem mitemRectangleAqua;
      private System.Windows.Forms.MenuItem mitemRectangleDefault;
      private System.Windows.Forms.MenuItem mitemTextRed;
      private System.Windows.Forms.MenuItem mitemTextBlue;
      private System.Windows.Forms.MenuItem mitemWindowGreen;

      public FormMain()
      {
         //
         // Required for Windows Form Designer support
         //
         InitializeComponent();

         //
         // TODO: Add any constructor code after InitializeComponent call
         //
      }
      /// <summary>
      /// Clean up any resources being used.
      /// </summary>
      protected override void Dispose( bool disposing )
      {
         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.menuMain = new System.Windows.Forms.MainMenu();
         this.menuItem2 = new System.Windows.Forms.MenuItem();
         this.mitemTextRed = new System.Windows.Forms.MenuItem();
         this.mitemTextBlue = new System.Windows.Forms.MenuItem();
         this.mitemTextDefault = new System.Windows.Forms.MenuItem();
         this.menuItem1 = new System.Windows.Forms.MenuItem();
         this.mitemRectangleYellow = new System.Windows.Forms.MenuItem();
         this.mitemRectangleAqua = new System.Windows.Forms.MenuItem();
         this.mitemRectangleDefault = new System.Windows.Forms.MenuItem();
         this.menuItem3 = new System.Windows.Forms.MenuItem();
         this.mitemRectangleBorder = new System.Windows.Forms.MenuItem();
         this.menuItem10 = new System.Windows.Forms.MenuItem();
         this.mitemWindowGreen = new System.Windows.Forms.MenuItem();
         this.mitemWindowBlack = new System.Windows.Forms.MenuItem();
         this.mitemWindowDefault = new System.Windows.Forms.MenuItem();
         // 
         // menuMain
         // 
         this.menuMain.MenuItems.Add(this.menuItem2);
         this.menuMain.MenuItems.Add(this.menuItem1);
         this.menuMain.MenuItems.Add(this.menuItem10);
         // 
         // menuItem2
         // 
         this.menuItem2.MenuItems.Add(this.mitemTextRed);
         this.menuItem2.MenuItems.Add(this.mitemTextBlue);
         this.menuItem2.MenuItems.Add(this.mitemTextDefault);
         this.menuItem2.Text = "Text";
         // 
         // mitemTextRed
         // 
         this.mitemTextRed.Text = "Red";
         this.mitemTextRed.Click += new System.EventHandler(this.mitemTextRed_Click);
         // 
         // mitemTextBlue
         // 
         this.mitemTextBlue.Text = "Blue";
         this.mitemTextBlue.Click += new System.EventHandler(this.mitemTextBlue_Click);
         // 
         // mitemTextDefault
         // 
         this.mitemTextDefault.Checked = true;
         this.mitemTextDefault.Text = "Default";
         this.mitemTextDefault.Click += new System.EventHandler(this.mitemTextDefault_Click);
         // 
         // menuItem1
         // 
         this.menuItem1.MenuItems.Add(this.mitemRectangleYellow);
         this.menuItem1.MenuItems.Add(this.mitemRectangleAqua);
         this.menuItem1.MenuItems.Add(this.mitemRectangleDefault);
         this.menuItem1.MenuItems.Add(this.menuItem3);
         this.menuItem1.MenuItems.Add(this.mitemRectangleBorder);
         this.menuItem1.Text = "Rectangle";
         // 
         // mitemRectangleYellow
         // 
         this.mitemRectangleYellow.Text = "Yellow";
         this.mitemRectangleYellow.Click += new System.EventHandler(this.mitemRectangleYellow_Click);
         // 
         // mitemRectangleAqua
         // 
         this.mitemRectangleAqua.Text = "Aqua";
         this.mitemRectangleAqua.Click += new System.EventHandler(this.mitemRectangleAqua_Click);
         // 
         // mitemRectangleDefault
         // 
         this.mitemRectangleDefault.Checked = true;
         this.mitemRectangleDefault.Text = "Default";
         this.mitemRectangleDefault.Click += new System.EventHandler(this.mitemRectangleDefault_Click);
         // 
         // menuItem3
         // 
         this.menuItem3.Text = "-";
         // 
         // mitemRectangleBorder
         // 
         this.mitemRectangleBorder.Checked = true;
         this.mitemRectangleBorder.Text = "Border";
         this.mitemRectangleBorder.Click += new System.EventHandler(this.mitemRectangleDraw_Click);
         // 
         // menuItem10
         // 
         this.menuItem10.MenuItems.Add(this.mitemWindowGreen);
         this.menuItem10.MenuItems.Add(this.mitemWindowBlack);
         this.menuItem10.MenuItems.Add(this.mitemWindowDefault);
         this.menuItem10.Text = "Window";
         // 
         // mitemWindowGreen
         // 
         this.mitemWindowGreen.Text = "Green";
         this.mitemWindowGreen.Click += new System.EventHandler(this.mitemWindowGreen_Click);
         // 
         // mitemWindowBlack
         // 
         this.mitemWindowBlack.Text = "Black";
         this.mitemWindowBlack.Click += new System.EventHandler(this.mitemWindowBlack_Click);
         // 
         // mitemWindowDefault
         // 
         this.mitemWindowDefault.Checked = true;
         this.mitemWindowDefault.Text = "Default";
         this.mitemWindowDefault.Click += new System.EventHandler(this.mitemWindowDefault_Click);
         // 
         // FormMain
         // 
         this.Font = new System.Drawing.Font("Microsoft Sans Serif", 11F, System.Drawing.FontStyle.Regular);
         this.Menu = this.menuMain;
         this.MinimizeBox = false;
         this.Text = "WordWrap";
         this.MouseDown += new System.Windows.Forms.MouseEventHandler(this.FormMain_MouseDown);
         this.MouseUp += new System.Windows.Forms.MouseEventHandler(this.FormMain_MouseUp);
         this.Paint += new System.Windows.Forms.PaintEventHandler(this.FormMain_Paint);
         this.MouseMove += new System.Windows.Forms.MouseEventHandler(this.FormMain_MouseMove);

      }
      #endregion

      /// <summary>
      /// The main entry point for the application.
      /// </summary>

      static void Main() 
      {
         Application.Run(new FormMain());
      }

      private RectangleF rcDraw = new RectangleF(16, 16, 208, 160);
      private StretchRectangle stretch = new StretchRectangle();

      private void 
      FormMain_Paint(object sender, 
      System.Windows.Forms.PaintEventArgs e)
      {
         string str = "Font: " + Font.Name + "\n" +
            "Font Size: " + Font.Size.ToString() + "\n" +
            "Font Style: " + Font.Style.ToString() + "\n" +
            "Window Rect: (" +
               Bounds.X.ToString() + "," +
               Bounds.Y.ToString() + "," +
               Bounds.Right.ToString() + "," +
               Bounds.Bottom.ToString() + ")\n" +
            "Draw Rect: (" + 
               rcDraw.X.ToString() + "," +
               rcDraw.Y.ToString() + "," +
               rcDraw.Right.ToString() + "," +
               rcDraw.Bottom.ToString() + ")\n\n" +
            "This is a long string " +
            "that may need to be word wrapped." +
            " And that is why we pass a rectangle " +
            "in the call to DrawString.";
         
         // Set the text color.
         Brush brText;
         if (mitemTextDefault.Checked)
            brText = new SolidBrush(SystemColors.WindowText);
         else if (mitemTextRed.Checked)
            brText = new SolidBrush(Color.Red);
         else
            brText = new SolidBrush(Color.Blue);

         // Set the background color.
         Brush brRect;
         if (mitemRectangleDefault.Checked)
            brRect = new SolidBrush(SystemColors.Window);
         else if (mitemRectangleAqua.Checked)
            brRect = new SolidBrush(Color.Aqua);
         else
            brRect = new SolidBrush(Color.Yellow);

         // Create an integer rectangle (for vector calls)
         Rectangle rc = Rectangle.Round(rcDraw);

         // Fetch background color.
         Color clrClear;
         if (mitemWindowBlack.Checked)
            clrClear = Color.Black;
         else if (mitemWindowGreen.Checked)
            clrClear = Color.Green;
         else
            clrClear = SystemColors.Window;

         // Erase background.
         e.Graphics.Clear(clrClear);

         // Draw background rectangle.
         e.Graphics.FillRectangle(brRect, rc);

         // Draw text
         e.Graphics.DrawString(str, this.Font, brText, rcDraw);

         if (mitemRectangleBorder.Checked)
         {
            e.Graphics.DrawRectangle(new Pen(Color.Black), rc);
         }
      } // FormMain_Paint

      private void FormMain_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
      {
         // Start stretchable rectangle drawing.
         stretch.Init(e.X, e.Y, (Control)this);
         rcDraw = new RectangleF(e.X, e.Y, 0, 0);
      }

      private void FormMain_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
      {
         // Move stretchable rectangle.
         stretch.Move(e.X, e.Y);
         rcDraw.Width = e.X - rcDraw.X;
         rcDraw.Height = e.Y - rcDraw.Y;
      }

      private void FormMain_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
      {
         // End stretchable rectangle drawing.
         stretch.Done();
         rcDraw.Width = e.X - rcDraw.X;
         rcDraw.Height = e.Y - rcDraw.Y;
         
         // Reverse coordinates for negative values.
         if (rcDraw.Width < 0)
         {
            rcDraw.X = rcDraw.X + rcDraw.Width;
            rcDraw.Width *= (-1);
         }
         if (rcDraw.Height < 0)
         {
            rcDraw.Y = rcDraw.Y + rcDraw.Height;
            rcDraw.Height *= (-1);
         }
         Invalidate();
      }

      private void mitemRectangleDraw_Click(object sender, System.EventArgs e)
      {
         mitemRectangleBorder.Checked = !mitemRectangleBorder.Checked;
         Invalidate();
      }

      private void mitemTextBlue_Click(object sender, System.EventArgs e)
      {
         if (!mitemTextBlue.Checked)
         {
            mitemTextBlue.Checked = true;
            mitemTextRed.Checked = false;
            mitemTextDefault.Checked = false;
            Invalidate();
         }
      }

      private void mitemTextRed_Click(object sender, System.EventArgs e)
      {
         if (!mitemTextRed.Checked)
         {
            mitemTextBlue.Checked = false;
            mitemTextRed.Checked = true;
            mitemTextDefault.Checked = false;
            Invalidate();
         }
      }

      private void mitemTextDefault_Click(object sender, System.EventArgs e)
      {
         if (!mitemTextDefault.Checked)
         {
            mitemTextBlue.Checked = false;
            mitemTextRed.Checked = false;
            mitemTextDefault.Checked = true;
            Invalidate();
         }
      }

      private void mitemWindowGreen_Click(object sender, System.EventArgs e)
      {
         if (!mitemWindowGreen.Checked)
         {
            mitemWindowGreen.Checked = true;
            mitemWindowBlack.Checked = false;
            mitemWindowDefault.Checked = false;
            Invalidate();
         }
      }

      private void mitemWindowBlack_Click(object sender, System.EventArgs e)
      {
         if (!mitemWindowBlack.Checked)
         {
            mitemWindowGreen.Checked = false;
            mitemWindowBlack.Checked = true;
            mitemWindowDefault.Checked = false;
            Invalidate();
         }
      }

      private void mitemWindowDefault_Click(object sender, System.EventArgs e)
      {
         if (!mitemWindowDefault.Checked)
         {
            mitemWindowGreen.Checked = false;
            mitemWindowBlack.Checked = false;
            mitemWindowDefault.Checked = true;
            Invalidate();
         }
      }

      private void mitemRectangleYellow_Click(object sender, System.EventArgs e)
      {
         if (!mitemRectangleYellow.Checked)
         {
            mitemRectangleYellow.Checked = true;
            mitemRectangleAqua.Checked = false;
            mitemRectangleDefault.Checked = false;
            Invalidate();
         }
      }

      private void mitemRectangleAqua_Click(object sender, System.EventArgs e)
      {
         if (!mitemRectangleAqua.Checked)
         {
            mitemRectangleYellow.Checked = false;
            mitemRectangleAqua.Checked = true;
            mitemRectangleDefault.Checked = false;
            Invalidate();
         }
      }

      private void mitemRectangleDefault_Click(object sender, System.EventArgs e)
      {
         if (!mitemRectangleDefault.Checked)
         {
            mitemRectangleYellow.Checked = true;
            mitemRectangleAqua.Checked = false;
            mitemRectangleDefault.Checked = true;
            Invalidate();
         }
      }

   } // class
} // namespace

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -