我正在编写一个在C#中使用NotifyIcon的应用程序。我希望当用户点击系统托盘上的NotifyIcon(屏幕右下角)时,通知表单(这不是主要表单,它只是一个用于显示通知的次要表单)将显示在NotifyIcon的位置如Dropbox那样:
我使用了NotifyIcon的MouseClick事件并编写如下:
private void NotifyIcon_MouseClick(object sender, MouseEventArgs e)
{
Form2 form = new Form2();
form.SetDesktopLocation(MousePosition.X - form.Width/2,MousePosition.Y-form.Height-20);
form.Show();
form.Focus();
}
但是它没有按预期工作,通知表单显示在主表单的位置而不是NotifyIcon的位置。
任何人都可以帮助我:|
答案 0 :(得分:1)
转到Form2
设计,选择Form2
的属性。在StartPosition
的属性中查找Form2
,将StartPosition
设置为Manual
,或者您可以将其设为
Form2 form = new Form2();
form.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
form.SetDesktopLocation(MousePosition.X - form.Width/2,MousePosition.Y-form.Height-20);
form.Show();
form.Focus();
希望你解决问题。