WinForm 設置窗體啟動位置在活動屏幕右下角


WinForm 設置窗體啟動位置在活動屏幕右下角

在多屏幕環境下, 默認使用鼠標所在的屏幕

1. 設置窗體的 StartPositionFormStartPosition.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就可以了, 但是始終只顯示在主屏幕上. 多屏幕下, 次屏幕的坐標是可以隨意調動的, 為了不受多屏幕的影響, 直接獲取屏幕的左上角, 然后計算右下角, 最后根據右下角的坐標計算窗體的起始位置.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM