设置winfrom窗体透明度,拖动,任务栏中显示窗体

1.一般为了使得窗体透明可以直接设置Opacity 的属性为60%。

若果是为了使得窗体上的一部分透明的话,就可以把窗体的TransparencyKey设为黑色,同时把窗体的透明度设为100%(不透明) ,同时把窗体的Background设为黑色。同时为了让不透明的地方显示处理可以试着对应区域Background 的颜色不是黑色就行。

2.为了实现窗体的拖动,可以使用如下方式。

先屏蔽掉窗体的标头设置ControlBox =false,让后添加一个papel,在papel上给出相关的操作选择可以使用label。让后按如下方式设置就可以实现拖动效果。

private Point mouseOffset; //记录鼠标指针的坐标
bool ISMOVE = false;

private void panel1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
this.Opacity = 1;
mouseOffset.X = e.X;
mouseOffset.Y = e.Y;
ISMOVE = true;
}

}

private void panel1_MouseMove(object sender, MouseEventArgs e)
{
if (ISMOVE)
{
Point p = this.PointToScreen(e.Location);
this.Location = new Point(p.X - mouseOffset.X, p.Y - mouseOffset.Y);
}
}

private void panel1_MouseUp(object sender, MouseEventArgs e)
{
this.Opacity = 0.6;
ISMOVE = false;

}

实现效果如下:

3.任务栏中显示窗体 

使用notifyIcon控件就可以实现 ,首先设置窗体的form1.ShowInTaskbar = true(default) / false默认值是true, 当他设置为false时就从任务栏消失了。通常可以配合NotifyIcon来实现将程序隐藏到系统右下角的系统状态栏。8、设置是否显示窗体右下角调整大小的手柄 

form1.SizeGripStyle = Auto(default) / Show /Hide 

默认值为Auto,那么它会根据窗体的显示样式来决定是否显示这个手柄。例如:当窗体设置为对不能调节大小的话框时,这个手柄就不会出现。

9、设置窗体在最前端现实,例如一些播放器和聊天软件,他们通常都在所有窗体的上面。 

form1.TopMost = true / false(default)

为了实现任务栏 中的图标上点击时实现突出,和打开功能需要添加ContextMenuStrip  ,让后将ContextMenuStrip 设置到notifyIcon 下相关代码如下:

private void Form1_Resize(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Minimized)
{
this.Visible = false;
notifyIcon1.Visible = true;
}
else
{
this.Visible = true;
notifyIcon1.Visible = false;
}
}

posted @ 2013-04-10 12:09  langr  阅读(589)  评论(0编辑  收藏  举报