我最近买了一套显示器支架,可以自由旋转显示器。我希望能够快速地从一个方向切换到另一个方向,而不必费力访问操作系统的屏幕旋转功能。
如何设置热键或快捷方式来快速切换显示器的方向?
答案1
答案2
如果有些人仍在使用这个帖子或在谷歌上搜索这个,我有完美的解决方案。
下载展示
解压到 C:\Display\(或者您选择的文件夹)
打开 cmd,并输入 display.exe 的路径 - C:\Display\display.exe\ -listdevices (这将显示所有屏幕,让您选择要旋转哪一个)
根据索引号选择想要旋转的设备(屏幕)。
使用记事本创建一个 .bat 文件。(打开记事本,写入下面显示的行,保存为“所有文件”,并在您选择的名称后写入“.bat”)
写入 C:\display\display.exe -device(您的设备编号)-rotate 90 /toggle
如果“90(度)”是错误的屏幕旋转,只需将其更改为“180”或“270”即可。
您现在应该完成了,您可以编辑快捷方式或/并通过创建新的工具栏将其添加到任务栏。
->这种方式的好处是,你只需要一个快捷方式,而不需要多个-<
答案3
对我来说,只需按 CTRL+ALT+箭头键即可。比脚本、下载 display.exe 等简单得多。
答案4
有人在 AutoHotKey 论坛上编写了一个脚本,可以实现这一功能。但我自己还没尝试过。
他这样设计:按下 Windows 键 + 数字键盘键就可以旋转它:
- Win+ 4:将屏幕旋转为纵向
- Win+ 2:将屏幕旋转至横向(翻转)
- Win+ 6:将屏幕旋转为纵向(翻转)
- Win+ 8:将屏幕旋转至横向
脚本如下:
#SingleInstance Force
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
#Numpad8:: ; Landscape Mode - WinLogo + Number pad 8
IfWinExist, Screen Resolution
{
WinActivate, Screen Resolution
}
else
{
run "desk.cpl"
}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
Send, {Tab}
sleep 500
send, {Alt Down}
send, {o}
send, {Alt Up}
sleep 500
send, {Up} ; Send Up 4 times to make sure we are at the start of the dropdown
send, {Up}
send, {Up}
send, {Up}
sleep 500
send, {Alt Down}
send, {a}
send, {Alt Up}
WinWait, Display Settings
if ErrorLevel
{
MsgBox, WinWait timed out for display settings.
return
}
send, {Alt Down}
send, {k}
send, {Alt Up}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
send, {Alt Down}
send, {F4}
send, {Alt Up}
return
#Numpad4:: ; Portrait Mode - WinLogo + Number pad 4
IfWinExist, Screen Resolution
{
WinActivate, Screen Resolution
}
else
{
run "desk.cpl"
}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
Send, {Tab}
sleep 500
send, {Alt Down}
send, {o}
send, {Alt Up}
;return
sleep 500
send, {Up} ; Send Up 4 times to make sure we are at the start of the dropdown
send, {Up}
send, {Up}
send, {Up}
send, {Down}
sleep 500
send, {Alt Down}
send, {a}
send, {Alt Up}
WinWait, Display Settings
if ErrorLevel
{
MsgBox, WinWait timed out for display settings.
return
}
send, {Alt Down}
send, {k}
send, {Alt Up}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
send, {Alt Down}
send, {F4}
send, {Alt Up}
return
#Numpad6:: ; Portrait Mode (Flipped) - WinLogo + Number pad 6
IfWinExist, Screen Resolution
{
WinActivate, Screen Resolution
}
else
{
run "desk.cpl"
}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
Send, {Tab}
sleep 500
send, {Alt Down}
send, {o}
send, {Alt Up}
sleep 500
send, {Down} ; Send Up 4 times to make sure we are at the end of the dropdown
send, {Down}
send, {Down}
send, {Down}
sleep 500
send, {Alt Down}
send, {a}
send, {Alt Up}
WinWait, Display Settings
if ErrorLevel
{
MsgBox, WinWait timed out for display settings.
return
}
send, {Alt Down}
send, {k}
send, {Alt Up}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
send, {Alt Down}
send, {F4}
send, {Alt Up}
return
#Numpad2:: ; Landscape Mode (Flipped) - WinLogo + Number pad 2
IfWinExist, Screen Resolution
{
WinActivate, Screen Resolution
}
else
{
run "desk.cpl"
}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
Send, {Tab}
sleep 500
send, {Alt Down}
send, {o}
send, {Alt Up}
sleep 500
send, {Up} ; Send Up 4 times to make sure we are at the start of the dropdown
send, {Up}
send, {Up}
send, {Up}
send, {Down}
send, {Down}
sleep 500
send, {Alt Down}
send, {a}
send, {Alt Up}
WinWait, Display Settings
if ErrorLevel
{
MsgBox, WinWait timed out for display settings.
return
}
send, {Alt Down}
send, {k}
send, {Alt Up}
WinWait, Screen Resolution
if ErrorLevel
{
MsgBox, WinWait timed out.
return
}
send, {Alt Down}
send, {F4}
send, {Alt Up}
return