Jump to content
Sign in to follow this  

GUICtrlCreateGraphic ,how to draw a line which will follow mouse movement

Recommended Posts


i need to draw a line form position 0 ($x_0,$y_0 )   to  position 1 ($x_1,$y_1 ) 

i will click left mouse 2 times

position_0 is the mouse pos where i first click left mouse

position_1 is the mouse pos where i click left mouse again

and between the 2 clicks, i want to draw a line start form position_0 to where my mouse moved to .


#include <Misc.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#Include <WinAPI.au3>
Opt("MouseCoordMode", 2)
$hGUI = GUICreate("Draw a line",400,400)
$g = GUICtrlCreateGraphic(0, 0, 400, 400)
GUICtrlSetBkColor($g, 0xCCFFCC)


;1  first,i moved mouse to position($x_0,$y_0),click mouse left
Until _IsPressed('01')
Local $temp = MouseGetPos()
Local $x_0 = $temp[0]
Local $y_0 = $temp[1]

;2  then ,I will move mouse to a random position ($x_r ,$y_r)
    ;=====   how to show a line form $x_0,$y_0  to $x_r ,$y_r ????
    ;once i move the mouse ,the line should be redrawed immediately

;3  finally, i click mouse left in position ($x_1,$y_1),there should be only one line form $x_0,$y_0 to $x_1,$y_1
Until _IsPressed('01')

Local $temp = MouseGetPos()
Local $x_1 = $temp[0]
Local $y_1 = $temp[1]




Edited by fenhanxue

Share this post

Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this