Aide et conseils concernant AutoIt et ses outils.
Bonjour
Niveau 5
Messages : 138 Enregistré le : ven. 06 juin 2014 08:27
Status :
Hors ligne
#1
Message
par Bonjour » mer. 16 juil. 2014 08:41
Bonjour
Je m'explique j'ai un edit ($ES_MULTILINE+$ES_READONLY+$WS_VSCROLL) et je voudrais que lorsque ma sourie se place sur une des lignes je puisse récupérer cet ligne.
J'avais pensé a utiliser _GUICtrlEdit_GetLine et GUIGetCursorInfo pour récup la ligne en fonction de la position de la sourie mais j'avais oublier la barre de scrolling...
Merci
Modifié en dernier par
Bonjour le mer. 16 juil. 2014 20:10, modifié 1 fois.
Hugues
Niveau 8
Messages : 597 Enregistré le : ven. 21 sept. 2012 18:12
Status :
Hors ligne
#2
Message
par Hugues » mer. 16 juil. 2014 17:34
Salut,
Utilise plutôt une ListView, qu'un Edit.
Voici un code de Iste:
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <GUIConstantsEx.au3>
#Include <GuiListView.au3>
Opt("GUIOnEventMode", 1)
$Form1 = GUICreate("Form1", 200, 200)
Global $ListView1 = GUICtrlCreateListView('col',10,10, 180, 180)
For $i = 0 To 10
$item = GUICtrlCreateListViewItem("item n°" & $i, $ListView1)
Assign($item&"|tip","item n°" & $i)
Next
_GUICtrlListView_SetColumnWidth($ListView1, 0, $LVSCW_AUTOSIZE_USEHEADER )
GUISetState(@SW_SHOW)
GUISetOnEvent($GUI_EVENT_CLOSE,"quitter")
GUISetOnEvent($GUI_EVENT_MOUSEMOVE, "SysEvents")
While 1
Sleep(1000)
WEnd
Func SysEvents()
Local $test = _GUICtrlListView_HitTest(GUICtrlGetHandle($ListView1))
If IsArray($test) And $test[0] <> -1 Then
Local $iMode = Opt("MouseCoordMode", 1)
Local $aPos = MouseGetPos()
Opt("MouseCoordMode", $iMode)
Local $tip = String(Eval (Number(_GUICtrlListView_GetItemParam($ListView1,$test[0]))&"|tip"))
;mes tooltip sont noté a la création des item dans des variables "ID|tip"
ToolTip($tip,MouseGetPos(0),MouseGetPos(1)-10)
Else
ToolTip("")
EndIf
EndFunc
Func quitter()
Exit
EndFunc
Bonjour
Niveau 5
Messages : 138 Enregistré le : ven. 06 juin 2014 08:27
Status :
Hors ligne
#3
Message
par Bonjour » mer. 16 juil. 2014 20:10
Ok Merci