incubusor Posted February 16, 2014 Posted February 16, 2014 (edited) #include <Misc.au3> #include <MsgBoxConstants.au3> $DLL = DllOpen("user32.dll") $keyPressTimer = 0 ; Application Loop While 1 ; Exit Application If _IsPressed("7A", $DLL) And _IsPressed("11", $DLL) Then ExitLoop EndIf If _IsPressed("57", $DLL) Then $keyPressTimer += 1 If $keyPressTimer > 500 Then MsgBox("TestApp", "Debug", "W was held for more than half a second") EndIf ElseIf _IsPressed("57", $DLL) = 0 And $keyPressTimer > 0 Then $keyPressTimer = 0 EndIf Sleep(1); 1 milisecond WEnd DllClose($DLL) Shouldn't Sleep(1) result in a 1 millisecond delay for the main loop? So the counter that increments as W is being held down should be increasing by 1 every millisecond right? Edited February 16, 2014 by incubusor
Moderators Solution Melba23 Posted February 16, 2014 Moderators Solution Posted February 16, 2014 (edited) incubusor,The minimum pause used by Sleep is about 10ms - this is a Windows limitation - so using a value of less than 10 will still pause for that minimum time. The exception is Sleep[0] which gives up the next timeslice for the thread. This has been explained many times on the forum and a quick search would have saved both our fingers some wear and tear - it is also quite clearly mentioned in the Help file. If you really want shorter pauses then monoceres produced this UDF which can pause for mere nanoseconds. M23 Edited February 16, 2014 by Melba23 Typo Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now