• λ我爱Aspx >> C#.Net >> 实例学C#.net下轻松制作不规则窗体
  • 实例学C#.net下轻松制作不规则窗体

  • :aspxer  Դ:internet  :2007-5-7 13:28:25  ؼ:c#,.net
  • yOffset = -e.Y - SystemInformation.CaptionHeight -

    SystemInformation.FrameBorderSize.Height;

    mouseOffset = new Point(xOffset, yOffset);

    isMouseDown = true;

    }

    }

    创建该窗体的 MouseMove事件的相应处理程序

    private void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)

    {

    if (isMouseDown)

    {

    Point mousePos = Control.MousePosition;

    mousePos.Offset(mouseOffset.X, mouseOffset.Y);

    Location = mousePos;

    }

    }

    创建该窗体的MouseUp事件的相应处理程序

    private void Form1_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)

    {

    // 修改鼠标状态isMouseDown的值

    // 确保只有鼠标左键按下并移动时,才移动窗体

    if (e.Button == MouseButtons.Left)

    {

    isMouseDown = false;

    }

    }

    (3)。加入相应的其他的控件

    其他的就是看你自己的需要,来添加控件,实现自己想要实现的功能。

    本例中添加了一文本框,设置其背景为黄色,所以显示时也成了透明的。

    现在,我们就可以生成程序,看一下最后的效果了。

    [[The No.4 Picture.]]

    注意:如果监视器的颜色深度设置大于 24 位,则不管 TransparencyKey 属性是如何设置的,窗体的非透明部分都会产生显示问题。若要避免出现这种问题,请确保“显示”控制面板中的监视器颜色深度的设置小于 24 位。当开发具有这种透明功能的应用程序时,请牢记应使您的用户意识到此问题。

    Ҷƪл˵?
  • һƪ完全解读C#.NET中的正则表达式
    һƪASP.NET 2.0中使用自定义provider