[Gambas-user] desktop mouse
Gianluigi
bagonergi at gmail.com
Tue Apr 5 16:00:34 CEST 2022
Il giorno dom 3 apr 2022 alle ore 06:09 Shane <buster6seven at gmail.com> ha
scritto:
> Hi Everyone I'm trying to move the mouse automaticallyon the desktop and
> click. I can use "Mouse.Move" to move the mouse on the desktop but is
> there anyway to click?
>
> Cheers Shane
>
Hi Shane,
I don't know if this is what you want, but if there is at least one 'link',
'launcher', folder? on the desktop that is not 'home' and you create an
executable, put it on the desktop and run it....
I copied from Fabien and vuott's codes ;-)
'-----------------------------------
Private $hPicture As Picture
Private hDrawing As DrawingArea
Private hTimer As Timer
Private $fStartX As Float
Private $fStartY As Float
Private $fEndX As Float
Private $fEndY As Float
Private $aNames As String[]
Public Sub Form_KeyPress()
If Key.Code = Key.Esc Then Me.Close
End
Public Sub Form_Open()
Dim sNames As String
Dim aPoints As Float[] = [6, 2.25, 26, 17.25, 20.5, 20.75, 24.25, 27.75,
19.25, 30.5, 15.25, 23.75, 9.25, 26.75, 5.75, 2.25]
$hPicture = New Picture(32, 32, True)
With Paint
.Begin($hPicture)
.Brush = .Color(Color.Green)
.Polygon(aPoints)
.Fill
.End
End With
With Me
.Border = False
.Width = Screen.AvailableWidth
.Height = Screen.AvailableHeight
.Arrangement = Arrange.Vertical
.SkipTaskbar = True
'.Tracking = True ' for mouse use
.Transparent = True
End With
$fStartX = Me.W - 64
$fStartY = Me.H - 64
With hDrawing = New DrawingArea(Me) As "DrawingArea1"
.Expand = True
.Refresh
End With
Shell "gio list '" & Desktop.Path & "'" To sNames
If sNames Then
$aNames = Split(sNames, "\n", Null, True)
For i As Integer = 0 To $aNames.Max
Print $aNames[i]
Next
Shell "gio info '" & Desktop.Path &/ $aNames[$aNames.Max] & "'" To
sNames
If sNames Then
$fEndX = Val(Scan(sNames, "*icon-position: *,*\n*")[1])
$fEndY = Val(Scan(sNames, "*icon-position: *,*\n*")[2])
Else
Message.Warning(("Unable to continue"))
Me.Close
Endif
With hTimer = New Timer(5) As "Timer1"
.Start
End With
Else
Message.Warning(("Unable to continue"))
Me.Close
Endif
End
Public Sub DrawingArea1_Draw()
Paint.Begin(hDrawing)
Paint.DrawPicture($hPicture, $fStartX, $fStartY, 32, 32)
Paint.Fill()
Paint.End
End
Public Sub Timer1_Timer()
Dec $fStartY
Dec $fStartX
Dec $fStartX
hDrawing.Refresh
If $fStartY <= $fEndY Then $fStartY = $fEndY
If $fStartX <= $fEndX Then $fStartX = $fEndX
If $fStartY <= $fEndY And $fStartX <= $fEndX Then
hTimer.Stop
Shell "gio open '" & Desktop.Path &/ $aNames[$aNames.Max] & "'"
Me.Close
Endif
End
'--------------------------
Regards
Gianluigi
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gambas-basic.org/pipermail/user/attachments/20220405/c3fa4e0b/attachment.htm>
More information about the User
mailing list