- ''' <summary>多屏?示屏幕?置</summary>
- ''' <param name="obj">目?窗体</param>
- ''' <param name="scrIndex">由0?始的屏幕索引,0?主屏幕</param>
- Private Sub ShowScreens(obj As Form, scrIndex As Integer)
- Dim arr As Screen() = Screen.AllScreens
- If scrIndex < arr.Length Then
- obj.Left += arr(scrIndex).Bounds.X
- Else
- Dim mess As String = "?前屏幕索引超出范?,是否要?示在最后一?屏幕?"
- Dim result As DialogResult = _
- MessageBox.Show(mess, "信息提示", _
- MessageBoxButtons.YesNo, MessageBoxIcon.Warning)
- If result = Windows.Forms.DialogResult.Yes Then _
- obj.Left += arr(arr.Length - 1).Bounds.X
- End Sub
複製代碼 ---------------------------------------------------------------------------------- If Screen.AllScreens.Count > 1 Then
- Dim screen As Screen
- Dim scrwidth As Integer
- screen = screen.AllScreens(1)
- scrwidth = screen.AllScreens(1).Bounds.Size.Width / 2
- Me.Location = screen.Bounds.Location
- Me.Left += scrwidth - Me.Width / 2
- END if
- ---------------------------------------------
- 大概是類似這樣吧:
- Dim screen As Screen
- screen=screen.Allscreens (1)
- Form2.Location=screen.Bounds.Location
- Form2.Show()
- -----------------------------------------------
- https://www.ptt.cc/bbs/EZsoft/M.1357913495.A.083.html
- 設定:進入控制台 -> 螢幕解析度 -> 偵測
- -> 點選新出現的第二顆虛擬螢幕(未偵測到另一部顯示器)
- -> 下方的 多部顯示器(M)下拉選單:仍然在VGA上嘗試連線
- -> 確定
- 優點:不須安裝任何軟體,Windows系統內建。
- 不會因為隨意的鍵鼠訊號而使螢幕再度開啟。
- 可透過系統內建DisplaySwitch指令加參數來達成自訂熱鍵(見延伸進階)
- 缺點:作業系統僅限 Win7(支援) / Vista(未驗證) / XP(未驗證)。
- 熱鍵若要自訂可能須利用regedit修改註冊表達成,方法未知。(已解決,見延伸進階)
- 此法鍵鼠訊號並未鎖住,也就是說鍵鼠訊號的輸入依然正常,僅止於不會打開螢幕。
- 若使用環境上真的有接外接投影裝置,則該裝置啟動。
- 資料參考:http://www.mobile01.com/topicdetail.php?f=512&t=2502600&p=1#3
- mustrong 2011-12-20 01:59 #10
- 延伸進階:本法是透過作業系統"C:\Windows\System32\DisplaySwitch.exe"
- 的預設快速鍵來達成,可透過各種方式來達成自訂想要的熱鍵
- (建立cmd/捷徑/批次檔、API、Autohotkey類程式)
- displayswitch.exe
- /internal 預設螢幕(等於打開筆電螢幕)
- /clone 同步顯示
- /extend 延伸螢幕
- /external 外接螢幕/投影機(等於關閉筆電螢幕)
- ex.以捷徑為例
- 對著C:\Windows\System32\DisplaySwitch.exe
- 點右鍵→傳送到→桌面(建立捷徑)
- 回到桌面對著捷徑→右鍵→內容→目標(T)
- 在Displayswitch.exe後加上你要的其中一個參數
- 即可設定此捷徑執行該模式
- /internal 預設螢幕(等於打開筆電螢幕)
- /external 外接螢幕/投影機(等於關閉筆電螢幕)
- 對著捷徑→右鍵→內容→快速鍵 (此處設定你想要的快速鍵)
- ex.以cmd/bat(批次檔)為例(附檔名可存成.cmd或.bat)
- 建立一個純文字文件「關閉螢幕.cmd」,文字內容為
- C:\Windows\System32\DisplaySwitch.exe /external
- 存檔後未來只要執行「關閉螢幕.cmd」即可關掉筆電螢幕。
- (打開螢幕就是把/external換成/internal即可)
- 若要設定快速鍵亦可用捷徑的方式:
- 對著「關閉螢幕.cmd」點右鍵→傳送到→桌面(建立捷徑)
- 回到桌面對著捷徑→右鍵→內容→快速鍵 (此處設定你想要的快速鍵)
- 至於AutoHotKey的方法請參考#1Gy9gvRY (EZsoft)Re: [請問] 關筆電螢幕的軟體
- 資料參考:http://tinyurl.com/bvkcw9w
- If you want to use APIs with this command, you would need to post
- your query in MSDN for better support.
- http://social.msdn.microsoft.com/Forums/en-US/windowssdk/threads
複製代碼 |