2010-09-27 12 views
9

Ho un nuovo mouse che ha la capacità di scorrere a destra e sinistra usando la rotella di scorrimento. Mentre questa funzione funziona su pagine Web, Photoshop e così via, non farebbe nulla quando la uso in Visual Studio quando guardo un codice che è più lungo (in orizzontale) della finestra.Scorrimento orizzontale con rotella del mouse in Visual Studio

C'è un modo per farlo funzionare?

Visual Studio è 2010 express, il mouse è Logitech MX1100.

+1

Potete scrivermi (noahric alla MS)? Posso inoltrarti direttamente a persone che stavano lavorando su problemi con il mouse hscroll. –

+0

@Noah Richards: ti ho inviato una email usando il tuo blog. Grazie – IgalSt

risposta

7

Ci sono alcuni problemi con lo scorrimento orizzontale in VS2010, alcuni dei quali sono stati riparati o modificati dopo la spedizione di VS2010. Non sono sicuro se il MX1100 è un esempio specifico di una delle seguenti, ma alcuni dei problemi erano/sono:

  1. Alcuni driver topi finiscono per inviare l'evento al sbagliato HWND; abbiamo visto casi in cui gli eventi verranno sempre inviati all'ultima cosa focalizzata, ad es. la soluzione explorer scorrerà quando l'editor è focalizzato. Penso che questo sia stato corretto.
  2. Molti driver, prima di inviare WM_MOUSEHWHEEL (o falso WM_HSCROLL), controllano se l'HWND principale ha WS_HSCROLL (dichiara che ha una barra di scorrimento orizzontale win32). Poiché la finestra principale di VS non funziona, e cose come l'editor non hanno le barre di scorrimento orizzontali win32, si rifiuteranno di inviare messaggi di scroll orizzontali. Questo è senza prefisso.
  3. (Sicuramente non è il tuo caso, ma) VMWare Fusion (su OS X) che esegue windows non inoltra gli eventi di scorrimento orizzontale al sistema operativo del client.

Controllerò con le persone per vedere se l'MX1100 è noto o rientra in una delle prime due categorie.

+1

Grazie per la risposta dettagliata. 1 e 3 non sono certo il problema nel mio caso. Ho visto un problema con lo scroll scroll orizzontale anche in Notepad ++. In questo caso la barra di scorrimento sembra scorrere visivamente ma il codice stesso non lo fa. Inoltre, il design della scroll alcuni perché cambiarne il colore (dal blu di WinXP al grigio) – IgalSt

2

provare la mia soluzione con AutoHotKey:

https://superuser.com/a/1144201/240650

; Shift + Wheel for horizontal scrolling 
+WheelUp:: 
    ; Scroll to the left 
    MouseGetPos,,,id, fcontrol,1 
    Loop 8 ; <-- Increase for faster scrolling 
     SendMessage, 0x114, 0, 0, %fcontrol%, ahk_id %id% ; 0x114 is WM_HSCROLL and the 0 after it is SB_LINERIGHT. 
return 
+WheelDown:: 
    ;Scroll to the right 
    MouseGetPos,,,id, fcontrol,1 
    Loop 8 ; <-- Increase for faster scrolling 
     SendMessage, 0x114, 1, 0, %fcontrol%, ahk_id %id% ; 0x114 is WM_HSCROLL and the 1 after it is SB_LINELEFT. 
return 
Problemi correlati