Message.WParam 属性 
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置消息的 WParam 字段。
public:
 property IntPtr WParam { IntPtr get(); void set(IntPtr value); };public IntPtr WParam { get; set; }member this.WParam : nativeint with get, setPublic Property WParam As IntPtr属性值
- 
			
			IntPtr
nativeint 
消息的 WParam 字段。
示例
下面的代码示例演示如何重写 WndProc 该方法来处理在中标识的 Message操作系统消息。 本示例中处理WM_ACTIVATEAPP操作系统消息,了解另一个应用程序何时处于活动状态。 有关可用Message.Msg和Message.LParamMessage.WParam值的信息,请参阅 MSG 结构文档。 有关实际常量值的信息,请参阅 消息常量。
using namespace System;
using namespace System::Drawing;
using namespace System::Windows::Forms;
using namespace System::Security::Permissions;
namespace csTempWindowsApplication1
{
   public ref class Form1: public System::Windows::Forms::Form
   {
   private:
      // Constant value was found in the "windows.h" header file.
      static const Int32 WM_ACTIVATEAPP = 0x001C;
      Boolean appActive;
   public:
      Form1()
      {
         appActive = true;
         this->Size = System::Drawing::Size( 300, 300 );
         this->Text = "Form1";
         this->Font = gcnew System::Drawing::Font( "Microsoft Sans Serif",18.0F,System::Drawing::FontStyle::Bold,System::Drawing::GraphicsUnit::Point,((System::Byte)(0)) );
      }
   protected:
      virtual void OnPaint( PaintEventArgs^ e ) override
      {
         
         // Paint a string in different styles depending on whether the
         // application is active.
         if ( appActive )
         {
            e->Graphics->FillRectangle( SystemBrushes::ActiveCaption, 20, 20, 260, 50 );
            e->Graphics->DrawString( "Application is active", this->Font, SystemBrushes::ActiveCaptionText, 20, 20 );
         }
         else
         {
            e->Graphics->FillRectangle( SystemBrushes::InactiveCaption, 20, 20, 260, 50 );
            e->Graphics->DrawString( "Application is Inactive", this->Font, SystemBrushes::ActiveCaptionText, 20, 20 );
         }
      }
      [SecurityPermission(SecurityAction::Demand, Flags=SecurityPermissionFlag::UnmanagedCode)]
      virtual void WndProc( Message% m ) override
      {
         
         // Listen for operating system messages.
         switch ( m.Msg )
         {
            case WM_ACTIVATEAPP:
               
               // The WParam value identifies what is occurring.
               appActive = (int)m.WParam != 0;
               
               // Invalidate to get new text painted.
               this->Invalidate();
               break;
         }
         Form::WndProc( m );
      }
   };
}
[STAThread]
int main()
{
   Application::Run( gcnew csTempWindowsApplication1::Form1 );
}
using System;
using System.Drawing;
using System.Windows.Forms;
namespace csTempWindowsApplication1
{
    public class Form1 : System.Windows.Forms.Form
    {
        // Constant value was found in the "windows.h" header file.
        private const int WM_ACTIVATEAPP = 0x001C;
        private bool appActive = true;
        [STAThread]
        static void Main() 
        {
            Application.Run(new Form1());
        }
        
        public Form1()
        {
            this.Size = new System.Drawing.Size(300,300);
            this.Text = "Form1";
            this.Font = new System.Drawing.Font("Microsoft Sans Serif", 18F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((System.Byte)(0)));
        }
        protected override void OnPaint(PaintEventArgs e) 
        {
            // Paint a string in different styles depending on whether the
            // application is active.
            if (appActive) 
            {
                e.Graphics.FillRectangle(SystemBrushes.ActiveCaption,20,20,260,50);
                e.Graphics.DrawString("Application is active", this.Font, SystemBrushes.ActiveCaptionText, 20,20);
            }
            else 
            {
                e.Graphics.FillRectangle(SystemBrushes.InactiveCaption,20,20,260,50);
                e.Graphics.DrawString("Application is Inactive", this.Font, SystemBrushes.ActiveCaptionText, 20,20);
            }
        }
        protected override void WndProc(ref Message m) 
        {
            // Listen for operating system messages.
            switch (m.Msg)
            {
                // The WM_ACTIVATEAPP message occurs when the application
                // becomes the active application or becomes inactive.
                case WM_ACTIVATEAPP:
                    // The WParam value identifies what is occurring.
                    appActive = (((int)m.WParam != 0));
                    // Invalidate to get new text painted.
                    this.Invalidate();
                    break;                
            }
            base.WndProc(ref m);
        }
    }
}
Imports System.Drawing
Imports System.Windows.Forms
Namespace csTempWindowsApplication1
    Public Class Form1
        Inherits System.Windows.Forms.Form
        ' Constant value was found in the "windows.h" header file.
        Private Const WM_ACTIVATEAPP As Integer = &H1C
        Private appActive As Boolean = True
        <STAThread()> _
        Shared Sub Main()
            Application.Run(New Form1())
        End Sub
        Public Sub New()
            MyBase.New()
            Me.Size = New System.Drawing.Size(300, 300)
            Me.Text = "Form1"
            Me.Font = New System.Drawing.Font("Microsoft Sans Serif", 18.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte))
        End Sub
        Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs)
            ' Paint a string in different styles depending on whether the
            ' application is active.
            If (appActive) Then
                e.Graphics.FillRectangle(SystemBrushes.ActiveCaption, 20, 20, 260, 50)
                e.Graphics.DrawString("Application is active", Me.Font, SystemBrushes.ActiveCaptionText, 20, 20)
            Else
                e.Graphics.FillRectangle(SystemBrushes.InactiveCaption, 20, 20, 260, 50)
                e.Graphics.DrawString("Application is Inactive", Me.Font, SystemBrushes.ActiveCaptionText, 20, 20)
            End If
        End Sub
    <System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="FullTrust")> _
        Protected Overrides Sub WndProc(ByRef m As Message)
            ' Listen for operating system messages
            Select Case (m.Msg)
                ' The WM_ACTIVATEAPP message occurs when the application
                ' becomes the active application or becomes inactive.
            Case WM_ACTIVATEAPP
                    ' The WParam value identifies what is occurring.
                    appActive = (m.WParam.ToInt32() <> 0)
                    ' Invalidate to get new text painted.
                    Me.Invalidate()
            End Select
            MyBase.WndProc(m)
        End Sub
    End Class
End Namespace
注解
此字段的值取决于消息。 使用 WParam 字段获取处理消息非常重要的信息。 此字段通常用于存储小段信息,例如标志。