Jump to content

Recommended Posts

Posted (edited)

To your direct question. No.

Don't know what it is you coding. But you seem to make things more complicated than you should. (unless your just experimenting.)

Edited by MvGulik

"Straight_and_Crooked_Thinking" : A "classic guide to ferreting out untruths, half-truths, and other distortions of facts in political and social discussions."
"The Secrets of Quantum Physics" : New and excellent 2 part documentary on Quantum Physics by Jim Al-Khalili. (Dec 2014)

"Believing what you know ain't so" ...

Knock Knock ...
 

Posted

  Quote

Don't know what it is you coding. But you seem to make things more complicated than you should. (unless your just experimenting.)

It's a setup tool for a fairly complicated series of steps that need to be done to run a certain testing suite. I am not experimenting, been using AutoIt for about 3 or 4 years now.

I just need to reuse some functions which are quite a decent size, so being able to call them by GuiCtrlSetOnEvent or not, is a must. I don't see why you consider it to be so complicated?

  • Moderators
Posted

SublimePorte,

Perhaps you could use a wrapper function to set a flag when you call your function via OnEvent - something like this: :blink:

#include <GUIConstantsEx.au3>

Opt("GUIOnEventMode", 1)

$fOnEvent = False

$hGUI = GUICreate("Test", 500, 500)
GUISetOnEvent($GUI_EVENT_CLOSE, "On_Exit")

$hButton_1 = GUICtrlCreateButton("Test", 10, 10, 80, 30)
GUICtrlSetOnEvent(-1, "Wrapper") ; You really want to call Function here, but go via Wrapper

$hButton_2 = GUICtrlCreateButton("Test", 10, 50, 80, 30)
GUICtrlSetOnEvent(-1, "Wrapper")

GUISetState()

AdlibRegister("Function", 2000)

While 1
    Sleep(10)
WEnd

Func Function() ; This is the function you wanted to call

    If $fOnEvent Then
        ConsoleWrite("I was called via OnEvent from " & @GUI_CtrlId & @CRLF)
    Else
        ConsoleWrite("I was NOT called via OnEvent" & @CRLF)
    EndIf
    $fOnEvent = False

EndFunc

Func Wrapper() ; This is the function you actually call

    $fOnEvent = True
    Function()

EndFunc

Func On_Exit()

    Exit

EndFunc

Any use? ;)

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

  Reveal hidden contents

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...