亲宝软件园·资讯

展开

WinForm实现同时让两个窗体有激活效果的特效 WinForm实现同时让两个窗体有激活效果的特效实例

人气:0
想了解WinForm实现同时让两个窗体有激活效果的特效实例的相关内容吗,在本文为您仔细讲解WinForm实现同时让两个窗体有激活效果的特效的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:WinForm,两个窗体,激活效果,特效,下面大家一起来学习吧。

本文实例讲述了WinForm实现同时让两个窗体有激活效果的特效。主要采用windows api实现一个窗体激活的时候给另外一个发消息。分享给大家供大家参考。

具体实现方法如下:

using System; 
using System.Windows.Forms; 
using System.Runtime.InteropServices; 
namespace WindowsApplication43 
{ 
  public partial class Form1 : Form 
  { 
    Form frm =null; 
    public Form1() 
    { 
      InitializeComponent(); 
      this.Activated += Form_Activated; 
    } 
    const int WM_NCACTIVATE = 0x86; 
    const int WA_ACTIVE = 0x1; 
    [DllImport("user32.dll", EntryPoint = "SendMessage")] 
    public static extern int SendMessage(IntPtr hWnd, int wMsg, int wParam, int lParam); 
    private void button1_Click(object sender, EventArgs e) 
    { 
      frm = new Form(); 
      frm.Text = "jinjazz"; 
      frm.Activated += Form_Activated; 
      frm.Show(); 
      frm.Location = new System.Drawing.Point(this.Left + this.Width, this.Top); 
      SendMessage(this.Handle, WM_NCACTIVATE, WA_ACTIVE, 0); 
    } 
    void Form_Activated(object sender, EventArgs e) 
    { 
 
      SendMessage(this.Handle, WM_NCACTIVATE, WA_ACTIVE, 0); 
 
      if (frm != null) 
 
        SendMessage(frm.Handle, WM_NCACTIVATE, WA_ACTIVE, 0); 
    } 
  } 
}

希望本文所述对大家的C#程序设计有所帮助。

加载全部内容

相关教程
猜你喜欢
用户评论