Funktionreferenz


_GUICtrlTab_HitTest

Beschreibung anzeigen in

Ermittelt, ob der angegebene Punkt über einem Tab-Control liegt

#include <GuiTab.au3>
_GUICtrlTab_HitTest ( $hWnd, $iX, $iY )

Parameter

$hWnd Control-ID / Handle des Controls
$iX zu testende X Position
$iY zu testende Y Position

Rückgabewert

Gibt ein Array mit dem folgenden Format zurück:
    [0] - 0-basierender Index des Tabs oder -1 falls sich kein Tab an der Position befindet
    [1] - Ergebnis aus dem Hit Test:
        1 - Die Position befindet sich nicht über einem Tab
        2 - Die Position befindet sich über einem Icon des Tabs
        4 - Die Position befindet sich über einem Text des Tabs

Bemerkungen

- - - - - - - - Erklärung der Controls - - - - - - - -

Beispiel

Beispiel 1

#include "Extras\HelpFileInternals.au3"

#include <GUIConstantsEx.au3>
#include <GuiTab.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
    ; Erstellt die GUI
    Local $hGUI = GUICreate("_GUICtrlTab_HitTest (v" & @AutoItVersion & ")", 400, 300, 100, 100)
    Local $idTab = GUICtrlCreateTab(2, 2, 446, 266)
    _MemoMsgBoxStatus() ; Statuserstellung

    GUISetState(@SW_SHOW)

    ; Fügt Tabs hinzu
    _GUICtrlTab_InsertItem($idTab, 0, "Tab 0")
    _GUICtrlTab_InsertItem($idTab, 1, "Tab 1")
    _GUICtrlTab_InsertItem($idTab, 2, "Tab 2")

    ; Lagetest
    Local $aHit = _GUICtrlTab_HitTest($idTab, 80, 10)
    _MemoMsgBox($MB_SYSTEMMODAL, "Information", "Der Punkt [80,10] liegt über Tab " & $aHit[0])

    _MemoMsgBoxStatus("", -1, $hGUI) ; Keine weiteren Aktionen, es wird gewartet bis die GUI geschlossen wird.
EndFunc   ;==>Example

Example (OutProcess) : Tab HitTest to an External process

#include "Extras\HelpFileInternals.au3"

#include <GuiTab.au3>
#include <MsgBoxConstants.au3>

Example()

Func Example()
    Local $sFromTo
    Local $hWin = _MemoRunAU3OutProcess($sFromTo, False) ; OK also if running in diffent mode
    Local $hTabCtrl = _MemoCreateOutProcess($hWin, "SysTabControl32", 1, $sFromTo)

    Local $aHit = _GUICtrlTab_HitTest($hTabCtrl, 100, 10)
    _MemoMsgBox($MB_SYSTEMMODAL, "Info" & $sFromTo, "Point [100,10] is over tab " & $aHit[0])

    _MemoMsgBoxStatus("", -1, $hWin) ; no more action, wait GUI for closing

EndFunc   ;==>Example