ToolTip erweitern mit SteuerelementID Topic is solved

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

effel
Posts: 554
Joined: 16 Jan 2018, 13:34

ToolTip erweitern mit SteuerelementID

17 Dec 2023, 12:42

Hallo,
in der AHK Hilfe https://ahkde.github.io/docs/v1/lib/GuiControlGet.htm#Pos findet man ein fertiges Script welches mir beim erstellen der GUI sehr hilfreich ist.

Meinen Versuch es zu erweitern schlägt jedoch fehl. Ich möchte die Koordinaten des gewählten Elements anzeigen


Beispiel:

17.Dez.2023 18-23-58-712-Monitor-2.jpg
17.Dez.2023 18-23-58-712-Monitor-2.jpg (52.08 KiB) Viewed 375 times

Code: Select all

ListView2_TT := "`nGui,1: Add, listview, vListView2 hwndhListView2 grid background%ListView2Color% cBlack Hidden +Checked`n" a_space "a_LineNumber: " a_lineNumber

Code: Select all

WM_MOUSEMOVE()
{
    static AktStrlmnt, VorStrlmnt, _TT  ; _TT bleibt für den unteren ToolTip-Befehl leer.
    global AktStrlmntx
    global AktStrlmnty
    global AktStrlmntw
    global AktStrlmnth
    AktStrlmnt := A_GuiControl
; GuiControlGet, AktStrlmnt, Pos
    if (AktStrlmnt != VorStrlmnt and not InStr(AktStrlmnt, " "))
    {
        ToolTip  ; Versteckt den vorherigen Tooltip.
        SetTimer, ZeigeToolTip, 100
        VorStrlmnt := AktStrlmnt
    }
    return

    ZeigeToolTip:
    SetTimer, ZeigeToolTip, Off
 GuiControlGet, AktStrlmnt, Pos
;   ToolTip % %AktStrlmnt%_TT
   ToolTip % %AktStrlmnt%_TT "`n" SteuerelementIDData(AktStrlmnt)
;   ToolTip % %AktStrlmnt%_TT "`n" AktStrlmnt
;   ToolTip % %AktStrlmnt%_TT "`n" "x" %AktStrlmntX% " y" AktStrlmntY " w" AktStrlmntW " h" AktStrlmntH "  " SteuerelementIDX "  " %SteuerelementIDX%
;    ToolTip % %AktStrlmnt%_TT "`n" AktStrlmntX a_space AktStrlmntY a_space AktStrlmntW a_space AktStrlmntH
    SetTimer, EntferneToolTip,% (1.5*60*1000)
    return

    EntferneToolTip:
    SetTimer, EntferneToolTip, Off
    ToolTip
    return
}

SteuerelementIDData(SteuerelementID) {
    global SteuerelementIDX
    global SteuerelementIDY
    global SteuerelementIDW
    global SteuerelementIDH
GuiControlGet, SteuerelementID, Pos
; return "x" %SteuerelementIDX% " y" %SteuerelementIDY% " w" %SteuerelementIDW% " h" %SteuerelementIDH%
  return "x" SteuerelementIDX " y" SteuerelementIDY " w" SteuerelementIDW " h" SteuerelementIDH
} 

Rohwedder
Posts: 7750
Joined: 04 Jun 2014, 08:33
Location: Germany

Re: ToolTip erweitern mit SteuerelementID  Topic is solved

19 Dec 2023, 01:59

Hallo,
so etwa?:

Code: Select all

Gui, Add, Edit, vMeinEdit
MeinEdit_TT := "Der Tooltip für das Steuerelement mit der Variable MeinEdit"
Gui, Add, DropDownList, vMeineDDL, Rot|Grün|Blau
MeineDDL_TT := "Wählen Sie eine Farbe aus."
Gui, Add, CheckBox, vMeineCheckBox, Dieses Steuerelement hat keinen Tooltip.
Gui, Show
OnMessage(0x0200, "WM_MOUSEMOVE")
return
WM_MOUSEMOVE() {
	static AktStrlmnt, VorStrlmnt, _TT  ; _TT bleibt für unteren ToolTip leer.
	AktStrlmnt := A_GuiControl
	if (AktStrlmnt != VorStrlmnt and not InStr(AktStrlmnt, " "))
	{
		ToolTip  ; Vorherigen Tooltip verstecken.
		SetTimer, ZeigeToolTip, 1000
		VorStrlmnt := AktStrlmnt
	}
	return
	ZeigeToolTip:
	SetTimer, ZeigeToolTip, Off
	ToolTip % %AktStrlmnt%_TT "`n" SteuerelementIDData(AktStrlmnt)
	SetTimer, EntferneToolTip, 3000
	return
	EntferneToolTip:
	SetTimer, EntferneToolTip, Off
	ToolTip
	return
}
SteuerelementIDData(SteuerelementID) {
	GuiControlGet, Pos, Pos,% SteuerelementID
	return "x" PosX " y" PosY " w" PosW " h" PosH
}
GuiClose:
ExitApp
Übrigens, ich mußte googlen, um das erwähnte Skript zu finden!
Es ist auf https://ahkde.github.io/docs/v1/lib/Gui.htm#ExToolTip
effel
Posts: 554
Joined: 16 Jan 2018, 13:34

Re: ToolTip erweitern mit SteuerelementID

19 Dec 2023, 12:46

Rohwedder wrote:
19 Dec 2023, 01:59
Übrigens, ich mußte googlen, um das erwähnte Skript zu finden!
Hallo @Rohwedder,

vielen Dank, so geht's wie gedacht. Ich habe noch if AktStrlmnt dazu geschrieben, damit funktioniert es wunderbar.

Sorry für den falschen Link...

Unbenannt.png
Unbenannt.png (23.11 KiB) Viewed 294 times

Code: Select all

WM_MOUSEMOVE() {
	static AktStrlmnt, VorStrlmnt, _TT  ; _TT bleibt für unteren ToolTip leer.
	AktStrlmnt := A_GuiControl
	if (AktStrlmnt != VorStrlmnt and not InStr(AktStrlmnt, " "))
	{
		ToolTip  ; Vorherigen Tooltip verstecken.
		SetTimer, ZeigeToolTip, -1
		VorStrlmnt := AktStrlmnt
	}
	return
	ZeigeToolTip:
	SetTimer, ZeigeToolTip, Off
	if AktStrlmnt
	ToolTip % %AktStrlmnt%_TT "`n" SteuerelementIDData(AktStrlmnt)
	SetTimer, EntferneToolTip,  % (.1*60*1000)
	return
	EntferneToolTip:
	SetTimer, EntferneToolTip, Off
	ToolTip
	return
}

SteuerelementIDData(SteuerelementID) { ; https://www.autohotkey.com/boards/viewtopic.php?p=551874#p551874  Rohwedder
	GuiControlGet, Pos, Pos,% SteuerelementID
	return "x" PosX " y" PosY " w" PosW " h" PosH
}

Return to “Ich brauche Hilfe”

Who is online

Users browsing this forum: LuckyJoe and 9 guests