1
我有一個小的形式,看起來像這樣在vb.net顯示/隱藏窗體時,光標在左上角
http://img11.imageshack.us/img11/5651/samplennk.jpg
你知道如何設置Windows任務欄上出現和消失當鼠標的位置完全位於底部時?當鼠標在屏幕的左上角時,我想用我的表單做同樣的事情。
或者你可以向我建議一種不同的方式來做到這一點。用戶在使用過程中可能只需要設置這些軌道杆幾次。
我有一個小的形式,看起來像這樣在vb.net顯示/隱藏窗體時,光標在左上角
http://img11.imageshack.us/img11/5651/samplennk.jpg
你知道如何設置Windows任務欄上出現和消失當鼠標的位置完全位於底部時?當鼠標在屏幕的左上角時,我想用我的表單做同樣的事情。
或者你可以向我建議一種不同的方式來做到這一點。用戶在使用過程中可能只需要設置這些軌道杆幾次。
你可能只是有一個線程,檢查Cursor.Position,當它是0,0表單出現。
這有點粗糙,但將初始窗體狀態設置爲最小化。
public partial class Form1 : Form
{
private delegate void ShowFormDel();
private readonly ShowFormDel _ShowFormDel;
private bool _CheckForMouse;
public Form1()
{
InitializeComponent();
_CheckForMouse = true;
_ShowFormDel = ShowForm;
Thread x = new Thread(CheckMouseThread);
x.Start();
}
public void CheckMouseThread()
{
while (_CheckForMouse)
{
if (Cursor.Position.X < 5 && Cursor.Position.Y < 5)
{
this.Invoke(_ShowFormDel);
}
Thread.Sleep(1000);
}
}
private void ShowForm()
{
this.Location = new Point(0, 0);
this.WindowState = FormWindowState.Normal;
this.Activate();
this.Visible = true;
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
_CheckForMouse = false;
}
private void Form1_MouseLeave(object sender, System.EventArgs e)
{
this.WindowState = FormWindowState.Minimized;
}
}
嘿非常好,但你可以把它放在vb.net嗎? – 2009-07-16 18:26:24