免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
返回列表 回復 發帖

顯示器軟體控制方式參考

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/topicdet ... 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
返回列表