C 窗體桌面定位問題 轉

2021-09-05 23:34:07 字數 922 閱讀 6739

[問題]

我寫了一段c#窗體**,執行時沒有按我指定的桌面位置顯示。不知道是為什麼?這段**如下:

public class myform : form

static void main()

}窗體中的標題欄顯示正常,但desktoplocation好象沒起作用。

[回答]

desktoplocation是可以隨心所欲地設定的,但ms .net framework並不會注意你的設定,除非象下面這樣同時設定 startposition:

startposition = form.startposition.manual;

顧名思意,不難琢磨出這行**是幹什麼用的,form.startposition 告訴 .net framework 從**開始窗體顯示。可能的值有:centerparent、centerscreen、manual、windowsdefaultbounds 和 windowsdefaultlocation。startposition預設為windowsdefaultlocation,createwindow 等價於 cw_usedefault。

有人肯定會問:location 和 desktoplocation 之間有什麼區別啊?答案是:location 是相對於螢幕而言的,而 desktoplocation 是相對於桌面工作區——也就是除工作列以外的螢幕區域。要是這樣的話,就得考慮某個使用者哪根神經不對勁,將工作列拉寬充滿整個螢幕。

如果發生這種事情,設定 form.location = (0,0) 導致部分窗體被隱藏,而 desktoplocation = (0,0) 使一切都要重新考慮,desktoplocation 也可用於多監視器系統。(如果你曾針對牆式等離子螢幕編過程式,就會清楚)。此外,如果你想在visual studio 的屬性視窗中找到 desktoplocation 設定——那是白費勁,找不到的,它只能通過編碼來設定。真是齷齪!

C 窗體桌面定位問題 轉

問題 我寫了一段c 窗體 執行時沒有按我指定的桌面位置顯示。不知道是為什麼?這段 如下 public class myform form static void main 窗體中的標題欄顯示正常,但desktoplocation好象沒起作用。回答 desktoplocation是可以隨心所欲地設定的...

C 窗體桌面定位問題

問題 我寫了一段c 窗體 執行時沒有按我指定的桌面位置顯示。不知道是為什麼?這段 如下 public class myform form static void main 窗體中的標題欄顯示正常,但desktoplocation好象沒起作用。回答 desktoplocation是可以隨心所欲地設定的...

C 窗體釘在桌面 置底 嵌入桌面的辦法

想做乙個桌面時鐘,釘在桌面上不影響正常使用,只在看桌面的時候顯示。從網上多方尋找找到這麼個 但是還是有不方便的地方,大家 一下。這個程式在使用 顯示桌面 的時候還可以顯示,將程式的form1.cs改為 using system using system.collections.generic usi...