Sign in to follow this  
Followers 0
Tekki

Func Error...

3 posts in this topic

This script is supposed to shutdown the computer after either a custom amount or a preset of time...

#include <GUIConstantsEx.au3>

Opt('MustDeclareVars', 1)
Opt("GUIOnEventMode", 1)

Global $ExitID

_Main()

Func _Main()
    Local $CustomID, $PresetID

    GUICreate("Shutdown timer", 210, 80)

    GUICtrlCreateLabel("Please click a button!", 10, 10)
    $CustomID = GUICtrlCreateButton("Custom time", 10, 50, 50, 20)
    GUICtrlSetOnEvent($YesID, "OnCustom")
    $PresetID = GUICtrlCreateButton("Presets", 80, 50, 50, 20)
    GUICtrlSetOnEvent($NoID, "OnPresets")
    $ExitID = GUICtrlCreateButton("Exit", 150, 50, 50, 20)
    GUICtrlSetOnEvent($ExitID, "OnExit")

    GUISetOnEvent($GUI_EVENT_CLOSE, "OnExit")

    GUISetState()  ; display the GUI

    While 1
        Sleep(1000)
    WEnd
EndFunc   ;==>_Main

;--------------- Functions ---------------
Func OnCustom()

    $time = InputBox("","Shut down in how many minutes?") ; asks how many minutes to wait
    If @error = 1 Then Exit  ; cancel button

    $time = $time * 60 * 1000  ; transfers minutes to milliseconds
    Sleep($time)  ; pause script until user imput's time is reached
    MsgBox(0,"","Two seconds remaining!",2) ; Notify of shutdown, 2 seconds till shutdown
    Shutdown(4)  ; FORCE shutdown

EndFunc   ;==>OnCustom

Func OnPresets()
    Local $HourID, $30MinID

    GUICreate("Presets", 210, 80)

    GUICtrlCreateLabel("Please click a button!", 10, 10)
    $30MinID = GUICtrlCreateButton("30 minutes", 10, 50, 50, 20)
    GUICtrlSetOnEvent($30MinID, "Minute")
    $HourID = GUICtrlCreateButton("Hour", 80, 50, 50, 20)
    GUICtrlSetOnEvent($HourID, "Hour")
    $Two = GUICtrlCreateButton("Two hours", 150, 50, 50, 20)
    GUICtrlSetOnEvent($Two,"Two")
    $ExitID = GUICtrlCreateButton("Exit", 230, 50, 50, 20)
    GUICtrlSetOnEvent($ExitID, "Exit2")

    GUISetOnEvent($GUI_EVENT_CLOSE, "OnExit")

    GUISetState()  ; display the for presets GUI

    While 1
        Sleep(1000)
    WEnd

    Func Minute()
        $min = 30 * 60 * 1000
        Sleep($min)
        Shutdown(4)
    EndFunc

    Func Hour()
        $hour = 60 * 60 * 1000
        Sleep($hour)
        Shutdown(4)
    EndFunc

    Func Two()
        $Twoh = 120 * 60 * 1000
        Sleep($Twoh)
        Shutdown(4)
    EndFunc

    Func Exit2()
        Exit
    EndFunc

EndFunc   ;==>OnPresets

Func OnExit()
    If @GUI_CtrlId = $ExitID Then Exit
EndFunc   ;==>OnExit

I get an error saying

Func Minute()

Error:"Func" statement has no matching "EndFunc"

But it does...

I can't figure this out - anyone have any suggestions that can help?


If you intend to use Sarcasm you must this sticker!!![size="1"][sub]pic made by manadar[/sub][/size]

Share this post


Link to post
Share on other sites



Tekki,

You are declaring Functions within other Functions - not allowed! >_<

Try removing all the other functions from within function OnPresets.

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

Whoa... Thanks


If you intend to use Sarcasm you must this sticker!!![size="1"][sub]pic made by manadar[/sub][/size]

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
Sign in to follow this  
Followers 0