winform 彈出窗體指定位置


在啟動一個程序時,我們希望窗口顯示的位置處於屏幕的正中心,可以如下設置:

MainForm mainForm = new MainForm();

mainForm.StartPosition = FormStartPosition.CenterScreen;
mainForm.Show();
如果在允許操作主窗口之前,必須先登錄,則彈出登錄窗口。此時主窗口出現在登錄窗口后面,無法進行操作。

MainForm mainForm = new MainForm();

LoginForm dlg=new LoginForm();

dlg.ShowDialog();

這里ShowDialog方法表示你必須先操作完dlg窗口,才能操作后面的主窗體。

如果要登錄窗口顯示在主窗口的中心,則在顯示之前設置如下

dlg.StartPosition = FormStartPosition.CenterParent;

dlg.ShowDialog();

能夠這樣做的前提是主窗體必須先定義和顯示。否則登錄窗體可能無法找到父窗體。

除此之外,也可以手動設置窗口顯示的位置,即窗口坐標。

首先必須把窗體的顯示位置設置為手動。

dlg.StartPosition=FormStartPosition.Manual;

隨后獲取屏幕的分辨率,也就是顯示器屏幕的大小。

int xWidth = SystemInformation.PrimaryMonitorSize.Width;//獲取顯示器屏幕寬度

int yHeight = SystemInformation.PrimaryMonitorSize.Height;//高度

然后定義窗口位置,以主窗體為例

mainForm.Location = new Point(xWidth/2, yHeight/2);//這里需要再減去窗體本身的寬度和高度的一半

mainForm.Show();

這樣三步之后,一個准確定位在屏幕位置上的窗體就顯示出來了。


免責聲明!

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



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