欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-12-16 16:50:46
本文实例讲述了winform实现同时让两个窗体有激活效果的特效。主要采用windows api实现一个窗体激活的时候给另外一个发消息。分享给大家供大家参考。 具体实现方法...

本文实例讲述了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#程序设计有所帮助。

上一篇:

下一篇: