Mbee

Why won't my GUI window actually appear in this circumstance?

11 posts in this topic

I've developed a GUI app which works perfectly with its partner app under the most typical scenario, but when it's run after it's partner app is already running in the system tray, it's GUI window absolutely refuses to appear on the screen no matter what I try programmatically!  Instead, it just appears as if it's been minimized, and I have to actually click on it in the task bar in order to get it to show on the screen.

I've attached a screen shot to help explain what I mean...

Screenshot.png

"My GUI App" is show in the task bar (NOT the system tray) as if it was minimized. It does NOT show on the screen. The related (third-party) app that my app is controlling is shown in the system tray, indicating it is already running. (Ignore the small icon for my app that's also in the system tray). The GUI window refuses to show on the screen until I click where the left arrow is pointing.

Here's the code I've tried to display the GUI window on the screen rather than in the task bar:

GUISetState( @SW_SHOW, $My_GUI )
WinActivate( $My_GUI )
GUISetState( BitOR(@SW_SHOW, @SW_MAXIMIZE, @SW_RESTORE, @SW_ENABLE), $My_GUI )

None of this works --  manual intervention is required: the user must click the icon in the task bar, which is completely unacceptable.

What else can I do?

Thanks!

Share this post


Link to post
Share on other sites



Mbee,

Quote

What else can I do?

Show us all of the script.

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites
57 minutes ago, Melba23 said:

Mbee,

Show us all of the script.

M23

Hi, Melba!!

Sorry, it's almost 3000 lines long, and I'd prefer not to publish it.  Even if I did, to test it you'd need to pay at least $130 and wait for the order to arrive, then install special hardware and third-party drivers and application software, or it wouldn't work anyway.

I don't suppose there's anything else you might suggest?

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

The point(s) where you added the WinActivate and other attempts, have you validated that those lines are actually executing (say, by throwing a msgbox before or after the func call)?  Is there another way to validate that your script is loaded and running while it is in this "minimized" state?

Got any WinWait* funcs in your script? 

I'd prefer not to publish it

Any chance of posting enough code to make a reproducer script?  It's very difficult to troubleshoot something we can't see or touch.

Edited by spudw2k

Share this post


Link to post
Share on other sites

Hello again, all.  I apologize for the delay, but I've had too many other things on my plate...

I've done my best to show as much of my code that's related to my problem as possible, but although it passes the syntax checking, it will NOT actually run.  As I said above, there's absolutely no way to post code that will run for you without your substantial financial investment in buying special hardware, etc. I can only hope that the following is enough to allow you to see what I'm doing wrong.  Here goes!

#include <Constants.au3>
#include <File.au3>
#include <FileConstants.au3>
#include <GDIPlus.au3>
#include <GUIConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiToolbar.au3>
#include <Misc.au3>
#include <ProcessConstants.au3>
#include <StaticConstants.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
;
#include "ExtMsgBox.au3"                        ; By Melba23


Global Const $Cmy_ThisAppName = "My App"
Global Const $Cmy_MainGUITitle = $Cmy_ThisAppName & " v0.99"

Opt("MustDeclareVars", 1)
AutoItSetOption("WinTitleMatchMode", 3) ; 3 = Matches EXACT titles only
AutoItSetOption("MouseCoordMode", 0)    ; 0 = Use coordinates relative to Window
AutoItSetOption("GUIOnEventMode", 1)    ; Enable OnEvent functions notifications (rather than using MessageLoop Mode)

Global $G_MyApp_GUI, $G_InitialRun, $G_TargetInReadyState, $G_TargetPID, $G_TargetWinHdl

Global $G_MyAppExePath = @ScriptDir & "\MyGUIApp.exe"
Global $G_TargetProcName = "TargetApp.exe"
Global $G_TargetExePath = "C:\Program Files\" & $G_TargetProcName
Global $G_TargetTitle = "Target"
;
;
;   Entry Point
;
$G_InitialRun = True                                        ; This is the initial execution rather than a re-run
$G_TargetInReadyState = False                               ; Target is not yet in the Ready state

_MyChkTargetIsReady()   ; Check to ensure target app is in correct state. If not running, launch it and wait until it's in correct state.
$G_TargetInReadyState = True
_MyUpdStatusMsg("MAIN - Ready to begin --- No longer waiting for user to setup Target app...")

;
;   Now Show the Main GUI
;
#include "MyApp.isf"                            ; Create and populate the Main GUI. Sets $G_MyApp_GUI

;!!!!
;
;   ATTENTION FORUM READER!
;
;   The problem at issue (i.e., my app's GUI window does not appear on screen and instead stays in task bar as if minimized) ONLY
;   occurs under the following conditions: The Target app was ALREADY running -AND- in the correct, necessary state BEFORE this app
;   was run.  If the target app was NOT already running -or- it was not yet in the proper state, this code works fine!
;
;!!!!

GUISetState( @SW_SHOW, $G_MyApp_GUI )
WinActivate( $G_MyApp_GUI )                     ; Bring to front (sometimes necessary)

;!!!!
;
;   ATTENTION FORUM READER!  - The following call to GUISetState() was NOT in my original code.
;                              It was ONLY added to try and fix this weird problem, although it doesn't work either.
;
;!!!!
GUISetState( BitOR(@SW_SHOW, @SW_MAXIMIZE, @SW_RESTORE, @SW_ENABLE), $G_MyApp_GUI )
_MyUpdStatusMsg("MAIN - My App GUI SHOULD be on screen!")

While True
    Sleep( 500 )
WEnd
Exit

;
;
Func _MyChkTargetIsReady()
;
;   Check to see if the Target appplication is already up and running.  If not, launch it
;
    Local $Lf_Stat, $Lf_WaitingForRedButton, $Lf_TargetReadyTryCount, $Lf_LoopCount, $Lf_MsgTxt
    Local $Lf_TargetMainWinStillOpen, $Lf_NumFoundWins


    $G_TargetPID = ProcessExists($G_TargetProcName)
    If $G_TargetPID <= 0 Then                               ; If Target is NOT already active, then...
        _MyUpdStatusMsg("Proc name: '" & $G_TargetProcName & "' - Is not already running. We'll start it now...")
        $G_TargetPID = ShellExecute( $G_TargetExePath ) ; This launches Target asynchronously (i.e., without waiting)
        If $G_TargetPID = 0 Then
            MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "Internal Error launching Target - @error = " & @error & " - Exiting.")
            _MyErrorCloseAndExit()
        EndIf
;
        $G_TargetWinHdl = WinWaitActive($G_TargetTitle, "SomeText", 2*60)   ; Wait until after splash/setup window, for a max of 2 minutes
        If $G_TargetWinHdl = 0 Then
            MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "Exceeded maximum wait for Target Main Window to appear! - Exiting.")
            _MyErrorCloseAndExit()
        EndIf
    Else
        _MyUpdStatusMsg("_MyChkTargetIsReady() -- Target is already running. PID = 0x" & Hex($G_TargetPID))
    EndIf
;
;
;   Now we need to find out if Target is already in the system tray/taskbar in Ready mode.  To get into that mode,
;   the user must have already configured the device and set the output file path and other settings such that it's waiting
;   for the Start hotkey/tray action to begin actual data capture.
;
;   If that is not yet the case, we need to tell the user to do all that before we continue.
;
;
    AutoItSetOption("WinTitleMatchMode", 1)                 ; 1 = Matches titles from beginning, allowing multiples

    $Lf_TargetMainWinStillOpen = True
    $Lf_TargetReadyTryCount = 0
    $Lf_LoopCount = 0

    While $Lf_TargetMainWinStillOpen

        Local $Lf_WinAra = WinList("Target", "SomeText")    ; This SHOULD only match a Target window that's NOT in the taskbar
        $Lf_NumFoundWins = $Lf_WinAra[0][0]                 ; Number of matching windows
        If $Lf_NumFoundWins = 0 Then                        ; If there are none, it means the main Target window is not running (good!)
            $Lf_TargetMainWinStillOpen = False
            ExitLoop
        Else
            $Lf_TargetReadyTryCount += 1
            If $G_InitialRun Then

                If $Lf_TargetReadyTryCount <= 20 Then
                    Sleep (1 * 500)
                Else
                    WinActivate( $G_MyApp_GUI )
                    $Lf_MsgTxt = "Important!" & @CRLF & @CRLF _
                            & "It seems that although Target is active, it is NOT yet Ready!" & @CRLF & @CRLF _
                            & "Before any new data can be captured, you must first use Target to configure its settings, and then " _
                            & "you must press the Big Red Button in the middle of its screen.  Please do that now, or else 'Abort'..."
                    $Lf_Stat = _ExtMsgBoxSet( 2 + 4 + 64, Default, Default, $COLOR_RED, 16, "Candara", @DesktopWidth/3, @DesktopWidth/3 )
                    $Lf_Stat = _ExtMsgBox( 48, "Ready to Proceed|Abort", $Cmy_MainGUITitle, $Lf_MsgTxt )
                    If $Lf_Stat = 2 Then                            ; If the Abort button was pressed...
                        _MyErrorCloseAndExit()
                    ElseIf $Lf_Stat <> 1 Then
                        MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "Cancel or Exit requested - Goodbye...")
                        _MyErrorCloseAndExit()
                    EndIf
                EndIf

            Else                                        ; If Target in wrong state and this ISN'T the first time through...

                If $Lf_TargetReadyTryCount <= 20 Then
                    Sleep (1 * 500)
                Else
                    WinActivate( $G_MyApp_GUI )
                    $Lf_MsgTxt = "What's going on here? Why haven't you pressed the Big Red Button?" & @CRLF & @CRLF _
                            & "It seems that although Target is active, it is NOT yet ready to record!" & @CRLF & @CRLF _
                            & "Before any new material can be captured, you must first use Target to configure its settings, and then " _
                            & "you must press the Big Red Button in the middle of its screen.  Please do that now, or else 'Abort'..."
                    $Lf_Stat = _ExtMsgBoxSet( 2 + 4 + 64, Default, Default, $COLOR_RED, 16, "Candara", @DesktopWidth/3, @DesktopWidth/3 )
                    $Lf_Stat = _ExtMsgBox( 48, "Ready to Proceed|Abort", $Cmy_MainGUITitle, $Lf_MsgTxt )
                    If $Lf_Stat = 2 Then                            ; If the Abort button was pressed...
                        _MyErrorCloseAndExit()
                    ElseIf $Lf_Stat <> 1 Then
                        MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "Cancel or Exit requested - Goodbye...")
                        _MyErrorCloseAndExit()
                    EndIf
                EndIf

            EndIf
        EndIf
    WEnd

    If $Lf_TargetMainWinStillOpen Then                      ; If user said Proceed but Target STILL isn't ready, surrender!
        WinActivate( $G_MyApp_GUI )
        MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "Target is STILL not in the proper mode for recording!" & @CRLF & _
                        "Please solve your problems and then try again. I'm exiting now...")
        _MyErrorCloseAndExit()
    EndIf

    AutoItSetOption("WinTitleMatchMode", 3)             ; Reset to 3 = Match EXACT titles only

    $Lf_WaitingForRedButton = True
    $Lf_TargetReadyTryCount = 0
    $Lf_LoopCount = 0
    ;
    _MyUpdStatusMsg("Just about to start Red Button Wait for Title: " & $G_TargetTitle)

    While $Lf_WaitingForRedButton

        If _MyIsInTaskbar( $G_TargetTitle, True ) Then
            _MyUpdStatusMsg("INFO: Target *IS* in taskbar - Title = " & $G_TargetTitle)
            $Lf_WaitingForRedButton = False
            ExitLoop
        Else
            _MyUpdStatusMsg("INFO: Target is NOT in taskbar - Title = " & $G_TargetTitle)
        EndIf

        If $Lf_WaitingForRedButton Then
            While $Lf_WaitingForRedButton And ($Lf_TargetReadyTryCount <= 5)

                If _MyIsInTaskbar( $G_TargetTitle, True ) Then
                    _MyUpdStatusMsg("INFO: Inner - Target now *IS* in taskbar")
                    $Lf_WaitingForRedButton = False
                    ExitLoop
                Else
                    _MyUpdStatusMsg("INFO: Inner - Target is still NOT in taskbar!")
                EndIf

                $Lf_LoopCount += 1
                If $Lf_LoopCount < 6 Then                   ; 12 loops at 5 seconds each = wait 1 minute
                    Sleep( 5 * 1000 )                       ; Wait 5 seconds
                Else
                    $Lf_MsgTxt = "Important!" & @CRLF & @CRLF _
                            & "It seems that although Target is active, it is NOT yet ready to record!  Please be sure to DISABLE automatic " _
                            & "startup of Target and/or ensure Target is NOT already running -- either can cause this error." & @CRLF & @CRLF _
                            & "Before any new material can be captured, you must first use Target to configure its settings, and then " _
                            & "you must press the Big Red Button in the middle of its screen.  Please switch to the Target window now and do that, " _
                            &  "and when you're ready to go, click the 'Ready to Proceed' button here, or else 'Abort'..."
                    $Lf_Stat = _ExtMsgBoxSet( 2 + 4 + 64, Default, Default, $COLOR_RED, 16, "Candara", @DesktopWidth/3, @DesktopWidth/3 )
                    $Lf_Stat = _ExtMsgBox( 48, "Ready to Proceed|Abort", $Cmy_MainGUITitle, $Lf_MsgTxt )

                    If $Lf_Stat = 2 Then                            ; If the Abort button was pressed...
                        _MyErrorCloseAndExit()
                    ElseIf $Lf_Stat <> 1 Then
                        MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "Cancel or Exit requested - Goodbye...")
                        _MyErrorCloseAndExit()
                    EndIf
                    $Lf_TargetReadyTryCount += 1
                    WinActivate( $G_TargetWinHdl )          ; If we get here, user said ready to proceeed. Bring Target to the fore...
                    Sleep( 2 * 1000 )                       ; Now give the user another few seconds before checking again...
                EndIf
            WEnd
        EndIf
;
        If $Lf_WaitingForRedButton Then
            MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, "We've been through this loop several times now, but apparently Target still isn't ready." _
                    & @CRLF & "Please resolve the difficulties and then launch " & $Cmy_ThisAppName & " again when ready.  Exiting...")
            _MyErrorCloseAndExit()
        EndIf
    WEnd

    Return
EndFunc
;
;
;
Func _MyIsInTaskbar( $arg_NeededBtnTooltipText, $arg_Exact = False )
    Local $Lf_InstanceNum, $Lf_SysTrayHandle, $Lf_SysTrayBtnCount, $Lf_SysTrayBtnText, $Lf_SysTrayBtnIdx

    For $Lf_InstanceNum = 1 To 10
        ; Find systray handles
        $Lf_SysTrayHandle = ControlGetHandle('[Class:Shell_TrayWnd]', '', '[Class:ToolbarWindow32;Instance:' & $Lf_InstanceNum & ']')
        If @error Then ExitLoop

        ; Get systray item count
        Local $Lf_SysTrayBtnCount = _GUICtrlToolbar_ButtonCount($Lf_SysTrayHandle)
        If $Lf_SysTrayBtnCount = 0 Then ContinueLoop

        Local $Lf_SysTrayBtnTextAra[$Lf_SysTrayBtnCount]

        ; Look for wanted tooltip
        For $Lf_SysTrayBtnIdx = 0 To $Lf_SysTrayBtnCount - 1
            $Lf_SysTrayBtnText = _GUICtrlToolbar_GetButtonText( $Lf_SysTrayHandle, $Lf_SysTrayBtnIdx )
            If $Lf_SysTrayBtnText <> "" Then
                If $arg_Exact Then
                    If $Lf_SysTrayBtnText = $arg_NeededBtnTooltipText Then
                        Return SetError($Lf_InstanceNum, $Lf_SysTrayBtnIdx, True)
                    EndIf
                Else
                    If StringInStr($Lf_SysTrayBtnText, $arg_NeededBtnTooltipText, $STR_NOCASESENSEBASIC) = 1 Then
                        Return SetError($Lf_InstanceNum, $Lf_SysTrayBtnIdx, True)
                    EndIf
                EndIf
            EndIf
        Next
    Next
    Return SetError(-1, -1, False)

EndFunc   ;==>_MyIsInTaskbar



Func _MyErrorCloseAndExit()
    Exit
EndFunc   ;==>_MyErrorCloseAndExit


Func _MyUpdStatusMsg( $arg_String )
    MsgBox($MB_SYSTEMMODAL, $Cmy_MainGUITitle, $arg_String)
    Return
EndFunc   ;==>_MyUpdStatusMsg

Thank you for your time!

 

Share this post


Link to post
Share on other sites
Not seeing anything obvious...


#include "MyApp.isf"                            ; Create and populate the Main GUI. Sets $G_MyApp_GUI

I wonder if there is something going on with the Global declaration.  Can you verify the value of $G_MyApp_GUI before GUISetState(@SW_SHOW, $G_MyApp_GUI)?  I'm assuming it's correct since you say you can see the icon in the task bar.

Can you share some of the code the creates the GUI?

Share this post


Link to post
Share on other sites

#7 ·  Posted (edited)

37 minutes ago, spudw2k said:

Not seeing anything obvious...


#include "MyApp.isf"                            ; Create and populate the Main GUI. Sets $G_MyApp_GUI

I wonder if there is something going on with the Global declaration.  Can you verify the value of $G_MyApp_GUI before GUISetState(@SW_SHOW, $G_MyApp_GUI)?  I'm assuming it's correct since you say you can see the icon in the task bar.

Can you share some of the code the creates the GUI?

Sure thing, @spudw2k !

*.isf files are automatically created by the ISN AutoIt Studio tool (it's great if you're careful). Here are the active contents of that file..

; -- Created with ISN Form Studio 2 for ISN AutoIt Studio -- ;
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>
#include <EditConstants.au3>

Global $G_MyApp_GUI = GUICreate("My App",638,265,-1,-1,BitOr($WS_POPUP,$WS_CAPTION,$WS_SYSMENU,$WS_MINIMIZE,$WS_MINIMIZEBOX),-1)
GUISetOnEvent($GUI_EVENT_CLOSE, "_MyCtrlHdlr_GUIclose", $G_MyApp_GUI)
GUISetOnEvent($GUI_EVENT_MINIMIZE, "_MyCtrlHdlr_GUIminimize", $G_MyApp_GUI)
GUISetOnEvent($GUI_EVENT_RESTORE, "_MyCtrlHdlr_GUIrestore", $G_MyApp_GUI)
GUICtrlCreateLabel("My App",62,2,514,28,$SS_CENTER,-1)
GUICtrlSetFont(-1,20,400,2,"Copperplate Gothic Bold")
GUICtrlSetColor(-1,"0x008080")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Currently Active Stored Profile Info",152.5,42,333,20,$SS_CENTER,-1)
GUICtrlSetFont(-1,11,400,0,"Copperplate Gothic Light")
GUICtrlSetColor(-1,"0x008080")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Recording Filename:",18,127,142,21,-1,-1)
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
Global $G_gVideoNameCtl = GUICtrlCreateInput("",166,127,454,21,$ES_AUTOHSCROLL,$WS_EX_STATICEDGE)
GUICtrlSetFont(-1,12,700,0,"Candara")
GUICtrlSetTip(-1,"The Filename (only) you want to name the recorded file. The extension is added automatically.")
GUICtrlCreateLabel("Duration:",18,169,70,21,-1,-1)
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
Global $G_gDurHoursCtl = GUICtrlCreateInput("00",94,168,30,20,BitOr($ES_CENTER,$ES_NUMBER),$WS_EX_STATICEDGE)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_HoursEntered")
GUICtrlSetFont(-1,12,700,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Hrs",134,168,29,21,-1,-1)
GUICtrlSetFont(-1,12,700,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
Global $G_gDurMinsCtl = GUICtrlCreateInput("00",174,168,30,20,BitOr($ES_CENTER,$ES_NUMBER),$WS_EX_STATICEDGE)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_MinutesEntered")
GUICtrlSetFont(-1,12,700,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Mins",210,168,37,21,-1,-1)
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
Global $G_gDurSecsCtl = GUICtrlCreateInput("00",256,168,30,20,BitOr($ES_CENTER,$ES_NUMBER),$WS_EX_STATICEDGE)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_SecondsEntered")
GUICtrlSetFont(-1,12,700,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateLabel("Secs",294,168,37,21,-1,-1)
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateButton("Add Minutes:",339,163,105,30,$BS_CENTER,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_AddMins")
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
GUICtrlSetTip(-1,"Number of minutes to extend recording time")
Global $G_gAddMinsCtl = GUICtrlCreateInput("01",454,168,30,20,BitOr($ES_CENTER,$ES_NUMBER),$WS_EX_STATICEDGE)
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetBkColor(-1,"-2")
GUICtrlSetTip(-1,"Number of minutes to add to recording time")
Global $G_OptionsButtonCtl = GUICtrlCreateButton("Options",522,163,78,30,$BS_CENTER,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_Options")
GUICtrlSetFont(-1,12,400,2,"Candara")
GUICtrlSetTip(-1,"Select Options")
Global $G_RecButtonCtl = GUICtrlCreateButton("Record",26,214,100,30,-1,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_BeginRecord")
GUICtrlSetFont(-1,12,700,0,"Candara")
Global $G_StopButtonCtl = GUICtrlCreateButton("Stop",144,214,100,30,$BS_CENTER,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_StopRecord")
GUICtrlSetState(-1,BitOr($GUI_SHOW,$GUI_DISABLE))
GUICtrlSetFont(-1,12,700,0,"Candara")
Global $G_ResetButtonCtl = GUICtrlCreateButton("Reset",262,214,100,30,$BS_CENTER,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_ResetRecord")
GUICtrlSetState(-1,BitOr($GUI_SHOW,$GUI_DISABLE))
GUICtrlSetFont(-1,12,700,0,"Candara")
GUICtrlSetTip(-1,"Abort the current recording and delete the new file")
Global $G_ExitBothButtonCtl = GUICtrlCreateButton("Exit Both",378,214,100,30,-1,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_ExitBoth")
GUICtrlSetFont(-1,12,400,0,"Candara")
GUICtrlSetTip(-1,"Exits both this app and RECentral too")
Global $G_OpenFolderButtonCtl = GUICtrlCreateButton("Open Folder",500,214,100,30,-1,-1)
GUICtrlSetOnEvent(-1,"_MyCtrlHdlr_OpenFolder")
GUICtrlSetFont(-1,12,400,2,"Candara")
GUICtrlSetTip(-1,"Opens the folder containing the recorded files")

Let me know if you find anything that I should change or test.

Edited by Mbee
fixed some typos

Share this post


Link to post
Share on other sites

Share this post


Link to post
Share on other sites
1 minute ago, spudw2k said:

Defining $WS_MINIMIZE in the GUI style sets the GUI to start minimized.  Try removing that.

Good catch!  I don't know why that's there, but I'll remove it, try it, and report back.  Thanks!!

Share this post


Link to post
Share on other sites

@spudw2k, you are a god!  Removing that stupid, mistaken setting seems to have completely fixed my problem!!

I can't thank you enough!  If you hadn't have asked to see that .isf file, who knows if I would have ever figured it out!

HOORAY for you!!

Share this post


Link to post
Share on other sites

Share this post


Link to post
Share on other sites

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