Windows 7 焦点跟随鼠标与Resharper导航冲突
在Windows7中,您只需将鼠标悬停在窗口上,就可以为窗口提供焦点。默认情况下不启用此功能,但您可以在控制面板中启用它。(以下是要走的道路: [Easy of Access Center-->使鼠标更易于使用-->选中“用鼠标悬停在窗口上方激活窗口”]Windows 7 焦点跟随鼠标与Resharper导航冲突,windows-7,focus,resharper,mouseleave,Windows 7,Focus,Resharper,Mouseleave,在Windows7中,您只需将鼠标悬停在窗口上,就可以为窗口提供焦点。默认情况下不启用此功能,但您可以在控制面板中启用它。(以下是要走的道路: [Easy of Access Center-->使鼠标更易于使用-->选中“用鼠标悬停在窗口上方激活窗口”] 我非常喜欢这个功能,但有时当我试图在VisualStudio中使用Resharper打开C#类时,它会让我感到恼火。我将按CTRL+N并键入我要查看的类的名称(例如,“MyWpfClass”)。然后,Resharper将显示一个建议下拉列表,顶
我非常喜欢这个功能,但有时当我试图在VisualStudio中使用Resharper打开C#类时,它会让我感到恼火。我将按CTRL+N并键入我要查看的类的名称(例如,“MyWpfClass”)。然后,Resharper将显示一个建议下拉列表,顶部显示“MyWpfClass”。我点击了return,现在Resharper打开了一个下拉列表,让我在“MyWpfClass.xaml”和“MyWpfClass.xaml.cs”之间进行选择。但是,如果鼠标光标位于错误的位置,则下拉列表在一秒钟内关闭,我回到原点。有没有办法在不关闭“焦点跟随鼠标”功能的情况下解决此问题?我在MS Outlook上遇到了相同的问题:联系人的自动建议列表将自动关闭,因为Windows将其视为一个窗口,而不是新邮件窗口的一部分 您可以使用NiftyWindows,它具有相同的选项“焦点跟随鼠标”,可以通过上下文菜单访问 或者,由于它是用Autohotkey编写的,您可以使用extract并将其子例程“XWN_FocusHandler”运行到独立脚本中:
#Persistent
#SingleInstance force
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn All, OutputDebug ; Recommended for catching common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
SetTimer, XWN_FocusHandler, 100
return
XWN_FocusHandler:
CoordMode, Mouse, Screen
MouseGetPos, XWN_MouseX, XWN_MouseY, XWN_WinID
If ( !XWN_WinID )
Return
If ( (XWN_MouseX != XWN_MouseOldX) or (XWN_MouseY != XWN_MouseOldY) )
{
IfWinNotActive, ahk_id %XWN_WinID%
XWN_FocusRequest = 1
Else
XWN_FocusRequest = 0
XWN_MouseOldX := XWN_MouseX
XWN_MouseOldY := XWN_MouseY
XWN_MouseMovedTickCount := A_TickCount
}
Else
If ( XWN_FocusRequest and (A_TickCount - XWN_MouseMovedTickCount > 500) )
{
WinGetClass, XWN_WinClass, ahk_id %XWN_WinID%
If ( XWN_WinClass = "Progman" )
Return
; checks wheter the selected window is a popup menu
; (WS_POPUP) and !(WS_DLGFRAME | WS_SYSMENU | WS_THICKFRAME)
WinGet, XWN_WinStyle, Style, ahk_id %XWN_WinID%
If ( (XWN_WinStyle & 0x80000000) and !(XWN_WinStyle & 0x4C0000) )
Return
IfWinNotActive, ahk_id %XWN_WinID%
WinActivate, ahk_id %XWN_WinID%
XWN_FocusRequest = 0
}
Return
虽然我完全不确定这是否是ReSharper的责任,但我建议在一个时间点开始讨论,以防万一。