1

Тема: AHK: Появление GUI вокруг точки нажатия

Можете подсказать как сделать так что бы при нажатии средней кнопки мыши открывался ГУЙ с 4-мя кнопками, вокруг центра нажатия. Слева, снизу, справа, слева примерно как в Мае хотбоксы, может кто знаком.

Примерно понимаю как реализовать, но не понимаю как появляется Гуй, всегда в центре?

2

Re: AHK: Появление GUI вокруг точки нажатия

Для примера.

CoordMode, Mouse, Screen
Return

MButton::
MouseGetPos, OutputVarX, OutputVarY
GUIx := OutputVarX - 150
GUIy := OutputVarY - 150
GUI, Add, Button, w100 h100 x100 y000, Верх
GUI, Add, Button, w100 h100 x000 y100, Лево
GUI, Add, Button, w100 h100 x200 y100, Право
GUI, Add, Button, w100 h100 x100 y200, Низ
GUI, Show, x%GUIx% y%GUIy% w300 h300
Return

3 (изменено: Larec, 2016-08-23 21:02:03)

Re: AHK: Появление GUI вокруг точки нажатия

Примерно так и писал, но без Return во второй и не работало...
Есть ли возможность сделать прозрачной область всего всплывающего окна, кроме кнопок и с возможностью интерактива через невидимую область? И не работает во многих приложениях, но я где то видел решение.

Взял по соседству


WinGet, WinHND, ID, A
Gui, +0x40000000 -0x80000000  +Owner%WinHND% -Caption +AlwaysOnTop +Lastfound
Gui, Color, Black
WinSet, TransColor, Black

Прозрачность есть. Вылетает ошибка при повторном нажатии. И не работает в приложениях.

4

Re: AHK: Появление GUI вокруг точки нажатия

Можно бы каждую кнопку поместить в отдельный GUI.
8 кнопок по кругу:

CoordMode Mouse, Screen
PI := acos(0) * 2
N = 8
R := 100

MouseGetPos x0, y0
x0 -= 20, y0 -=15
Loop %N% {
	Gui %A_Index%:-Caption +ToolWindow
	Gui %A_Index%:Margin, 0, 0
	Gui %A_Index%:Add, Button, w40 h30, %A_Index%
	a := (2 * PI / N) * A_Index
	Gui %A_Index%:Show, % "X" (x0 + R * sin(a)) " Y" (y0 + R * cos(a))
}

5 (изменено: Larec, 2016-08-23 21:33:24)

Re: AHK: Появление GUI вокруг точки нажатия

Всем спасибо, дальше сам. Низкий поклон за вашу помощь.
Поторопился, как быть с приложениями?

Хм, сейчас работает.

6 (изменено: red2881, 2016-08-23 23:15:55)

Re: AHK: Появление GUI вокруг точки нажатия

Есть еще такое решение.
https://autohotkey.com/boards/viewtopic … mp;t=12078