könnt Ihr mal probieren, ob der Wert des Textfeldes auch bei Windows-Versionen < 10 'durchscrollt', wenn man über dem Feld das Mausrad dreht (und das auch bei nicht aktivem Fenster)?
Code: Select all
#NoEnv
SetBatchLines, -1
Values := [0, 1, 2, 3, 4, 5]
Count := 6
Current := 1
Gui, Font, s36
Gui, Add, Text, w200 h200 +0x301 Border vTxt, % Values[Current] ; SS_CENTER | SS_VCENTER | SS_NOTIFY
Gui, Show, NA, Test
OnMessage(0x020A, "WM_MOUSEWHEEL")
Return
GuiClose:
GuiEscape:
ExitApp
; ======================================================================================================================
WM_MOUSEWHEEL(W, L, M, H) {
Global Values, Count, Current
; Critical
If (A_GuiControl = "Txt") {
If (W & 0x80000000) {
If (Current < Count)
GuiControl, , %A_GuiControl%, % Values[++Current]
}
Else {
If (Current > 1)
GuiControl, , %A_GuiControl%, % Values[--Current]
}
Return 0
}
}