Ermittelt den Text eines Tools
#include <GuiToolTip.au3>
_GUIToolTip_GetText ( $hTool, $hWnd, $iID )
| $hTool | Handle des ToolTip Controls (welches von _GUIToolTip_Create zurückgegeben wird.) |
| $hWnd | Handle zum Fenster welches das Tool enthält |
| $iID | Handle des Controls welches mit dem Tool assoziiert ist oder die ID des Tools |
| Erfolg: | den Text des angegebenen Tools. Bei nicht mit AutoIt erstellten ToolTips werden nur die ersten 42 Zeichen des Textes des angegebenen Tools abgerufen. |
| Fehler: | setzt @error (siehe Bemerkungen). |
Wenn sich das von $hWnd referenzierte Steuerelement nicht im selben Prozess befindet und beide Prozesse in unterschiedlichen AutoIt-Modi (@AutoItVersion) ausgeführt werden, wird @error auf 6 gesetzt.
- - - - - - - - Erklärung der Controls - - - - - - - -
#include "Extras\HelpFileInternals.au3"
#include <GUIConstantsEx.au3>
#include <GUIToolTip.au3>
#include <MsgBoxConstants.au3>
Example()
Func Example()
Local $hGUI = GUICreate("ToolTip Get Text v(" & @AutoItVersion & ")", 450, 300, 100, 100)
; Erstellt ein Tooltip-Steuerelement mit den Standardeinstellungen
Local $hToolTip = _GUIToolTip_Create(0)
_MemoSetHandleInProcess($hToolTip)
Local $idButton = GUICtrlCreateButton("Button", 30, 32, 130, 28)
Local $hButton = GUICtrlGetHandle($idButton)
;~ $hGUI = 0 ; ist OK
_GUIToolTip_AddTool($hToolTip, $hGUI, "Dies ist der Tooltip-Text", $hButton)
GUISetState(@SW_SHOW)
; Zeigt den mit der Schaltfläche verbundenen Tooltip an
Opt("MouseCoordMode", 2)
MouseMove(50, 42, 0)
Sleep(250)
; Ermittelt den Text des Tools
_MemoMsgBox($MB_SYSTEMMODAL, 'Tooltip Text =', _GUIToolTip_GetText($hToolTip, $hGUI, $hButton))
While 1
If GUIGetMsg() = $GUI_EVENT_CLOSE Then ExitLoop
WEnd
; Zerstört das Tooltip Control
_MemoResetHandleInProcess($hTooltip)
_GUIToolTip_Destroy($hToolTip)
GUIDelete($hGUI)
EndFunc ;==>Example
#include "Extras\HelpFileInternals.au3" #include <GUIToolTip.au3> Example() Func Example() Local $sFromTo Local $hWin = _MemoRunAU3OutProcess($sFromTo, True) ; OK same mode, KO if different mode Local $hButton = _MemoCreateOutProcess($hWin, "Button", 0, $sFromTo) Local $hToolTip = _MemoGetHandleInProcess() ; Retrieve the text of the tool Local $sText = _GUIToolTip_GetText($hToolTip, $hWin, $hButton) If @error Then _MemoMsgBox($MB_ICONERROR, "Info" & $sFromTo, "_GUIToolTip_GetText()" & " @error = " & @error & @CRLF & _ @TAB & "cannot be accessed by an external process" & @CRLF & _ @TAB & "running in different mode") Else ; only working if both processes are running in "same mode" _MemoWrite('Info' & $sFromTo & @CRLF & $sText) EndIf _MemoMsgBoxStatus("", Default, $hWin) ; no more action, wait GUI for closing, close also OutProcess GUI EndFunc ;==>Example