Во время создания GUI элемента срабатывает метка Topic is solved

Помощь в написании скриптов
cxrsad
Posts: 10
Joined: 08 Jan 2024, 13:30

Во время создания GUI элемента срабатывает метка

24 Jan 2024, 13:22

Code: Select all

Gui, CrosshairOptions: +AlwaysOnTop +ToolWindow
Gui, CrosshairOptions: add, Text, , Size
Gui, CrosshairOptions: add, Edit, w72 gFuncResize vHandleSize, 0
Gui, CrosshairOptions: add, UpDown
Gui, CrosshairOptions: add, Text, , Thickness
Gui, CrosshairOptions: add, Edit, w72 gFuncResize vHandleThickness, 0
Gui, CrosshairOptions: add, UpDown
Gui, CrosshairOptions: add, Text, , Gap
Gui, CrosshairOptions: add, Edit, w72 gFuncResize vHandleGap, 0
Gui, CrosshairOptions: add, UpDown
Gui, CrosshairOptions: add, Text, , Color HEX
Gui, CrosshairOptions: add, Edit, w72 gFuncColor vHandleColor, 0
Почему во время создания полей срабатывает метка (gFuncResize и gFuncColor), если пользователь не взаимодействовал с полем?
Как это исправить?
Есть ли способ присвоить гуи элементу gosub после его создания?
marusa122
Posts: 135
Joined: 22 Mar 2023, 07:48

Re: Во время создания GUI элемента срабатывает метка

24 Jan 2024, 16:52

@cxrsad, попробуй сделать так:

Code: Select all

; 1) Создаём GUI
Gui, CrosshairOptions: New
Gui, CrosshairOptions: add, Text, , Size
Gui, CrosshairOptions: add, Edit, w72 gFuncResize vHandleSize, 0
Gui, CrosshairOptions: add, UpDown
; ...другие контролы...
Gui, CrosshairOptions: Show
Return 
; 2) Разбираемся с метками
FuncResize:
; то, что должна делать первая метка
Return
FuncColor:
; то, что должна делать вторая метка
Return 
mcl
Posts: 357
Joined: 04 May 2018, 16:35

Re: Во время создания GUI элемента срабатывает метка  Topic is solved

24 Jan 2024, 18:28

cxrsad wrote: Почему во время создания полей срабатывает метка?
Эксперименты показывают, что контрол Edit с сопутствующим UpDown выдаёт как минимум одно событие после первого Gui Show (два, если задано начальное значение). Вероятно, вызвано тем, что UpDown прописывает своё значение в Edit, и этим триггерит событие. Кроме того, сам Gui вызывает событие GuiSize (также после Gui Show).
Есть ли способ присвоить гуи элементу gosub после его создания?
Да:

Code: Select all

Gui, Add, Edit, vMyEdit
Gui, Add, UpDown
...
Gui, Show
GuiControl, +gFuncResize, MyEdit
github://oGDIp - GDI+ wrapper for AHK v1.1
cxrsad
Posts: 10
Joined: 08 Jan 2024, 13:30

Re: Во время создания GUI элемента срабатывает метка

26 Jan 2024, 13:11

mcl wrote:
24 Jan 2024, 18:28
Да:

Code: Select all

Gui, Add, Edit, vMyEdit
Gui, Add, UpDown
...
Gui, Show
GuiControl, +gFuncResize, MyEdit
Спасибо, лучший

Return to “Помощь”

Who is online

Users browsing this forum: No registered users and 78 guests