WinForm 設置窗體啟動位置在活動屏幕右下角
阿新 • • 發佈:2018-07-05
屏幕 for class 技術 point screen .com cursor 使用 1. 設置窗體的
WinForm 設置窗體啟動位置在活動屏幕右下角
在多屏幕環境下, 默認使用鼠標所在的屏幕
1. 設置窗體的 StartPosition
為 FormStartPosition.Manual
.
2. 獲取鼠標所在屏幕:
var screen = Screen.FromPoint(new Point(Cursor.Position.X, Cursor.Position.Y));
3. 計算並設置窗體位置坐標:
var x = screen.WorkingArea.X + screen.WorkingArea.Width - this.Width; var y = screen.WorkingArea.Y + screen.WorkingArea.Height - this.Height; this.Location = new Point(x, y);
在計算窗體起始坐標的時候, 看似簡單, 實際上走了一點彎路..., 如果是單屏幕, 只需要screen.WorkingArea.Width - this.Width
就可以了, 但是始終只顯示在主屏幕上. 多屏幕下, 次屏幕的坐標是可以隨意調動的, 為了不受多屏幕的影響, 直接獲取屏幕的左上角, 然後計算右下角, 最後根據右下角的坐標計算窗體的起始位置.
WinForm 設置窗體啟動位置在活動屏幕右下角