Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: VB4/32,VB5,VB6
Expertise: Intermediate
May 26, 2001

SetDoubleClickInfo - Set the double-click rectangle and timeout

Private Declare Function SystemParametersInfo Lib "user32" Alias _
    "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, _
    ByRef lpvParam As Any, ByVal fuWinIni As Long) As Long

Const SPIF_SENDWININICHANGE = &H2
Const SPIF_UPDATEINIFILE = &H1
Const SPI_SETDOUBLECLICKTIME = 32
Const SPI_SETDOUBLECLKHEIGHT = 30
Const SPI_SETDOUBLECLKWIDTH = 29

' set new values for the double-click area, and the
' time within which the user must click the mouse button
' again to be considered a double-clicl
'
' WIDTH and HEIGHT are the size (in pixels) of the rectangle
' inside which the second click must occur - default is 4 pixels
' TIMEOUT is the timeout (in milliseconds) - default is 500 milliseconds.
' If MAKEPERMANENT is True, then these new values persists among
'    subsequent Windows sessions

Sub SetDoubleClickInfo(ByVal Width As Long, ByVal Height As Long, _
    ByVal Timeout As Long, Optional ByVal MakePermanent As Boolean)
    Dim flags As Long
    
    ' are these changes permanent?
    If MakePermanent Then
        flags = SPIF_SENDWININICHANGE Or SPIF_UPDATEINIFILE
    End If
    
    ' change rectangle size with SystemParametersInfo
    SystemParametersInfo SPI_SETDOUBLECLKWIDTH, Width, ByVal 0&, flags
    SystemParametersInfo SPI_SETDOUBLECLKHEIGHT, Height, ByVal 0&, flags
    ' change timeout
    SystemParametersInfo SPI_SETDOUBLECLICKTIME, Timeout, ByVal 0&, flags
End Sub
Francesco Balena
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date