MsgBox - Generator

  • Du gehst mit der Muas auf das lustig blau geschriebene und klickst.
    Dann LESEN ;)

    mfg Ubuntu

  • hab das auch schon durchgelesen, kenn mich aber immer noch ned aus -.-

    achja hat einer von euch noch ne aufgabe^^?


    das editor öffnen ding is schon lang fertig xD

  • Ich finde das ist nicht so schwer.
    Es gibt ja schon einige Funktionen bei denen man sich vieles abschauen kann.
    Dadurch kann man bestimmt was über Funktionen und Arrays lernen.

    Und er kann mich ja immer noch Fragen ( @Gugi: Ich bin immer bereit einfach pm en)

    mfg Ubuntu

  • Es gibt dafür auch ein gutes Beispiel:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <EditConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt('MustDeclareVars', 1)

    [/autoit] [autoit][/autoit] [autoit]

    Global $iFlag, $Button, $msgbox, $asMsgText
    Global $optWarning, $optInfo, $optCritical, $optQuestion
    Global $optNoIcon, $optApplication, $optSysModal, $optTaskModal, $optOK
    Global $optOkCancel, $optYesNo, $optYesNoCancel, $optAbortRetryIgnore
    Global $optRetryCancel, $optCancelRetryContinue, $optNothing, $optTopMost
    Global $optRightJust, $optFirst, $optSecond, $optThird

    [/autoit] [autoit][/autoit] [autoit]

    _Main()

    [/autoit] [autoit][/autoit] [autoit]

    Func _Main()
    Local $TITLE, $TEXT, $Timeout
    Local $BTNCOPY, $BTNEXIT, $BTNPREVIEW, $MSG, $sText

    [/autoit] [autoit][/autoit] [autoit]

    GUICreate("MsgBox Wizard v.1.0", 440, 540, 100, 100) ; will create a dialog box

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateLabel("Title", 10, 5, 30)
    $TITLE = GUICtrlCreateInput("", 10, 20, 420, 20)
    GUICtrlSetState(-1, $GUI_FOCUS)
    GUICtrlSetTip(-1, "The title of the message box.")
    GUICtrlCreateLabel("Text", 10, 50, 30)
    $TEXT = GUICtrlCreateEdit("", 10, 65, 420, 100, $ES_AUTOVSCROLL + $WS_VSCROLL + $ES_MULTILINE + $ES_WANTRETURN)
    GUICtrlSetTip(-1, "The text of the message box.")

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Icons", 10, 170, 200, 130)
    $optWarning = GUICtrlCreateRadio("Warning", 20, 190, 100, 20)
    GUICtrlSetState(-1, $GUI_CHECKED)
    $optInfo = GUICtrlCreateRadio("Informational", 20, 210, 100, 20)
    $optCritical = GUICtrlCreateRadio("Critical", 20, 230, 100, 20)
    $optQuestion = GUICtrlCreateRadio("Question", 20, 250, 100, 20)
    $optNoIcon = GUICtrlCreateRadio("None", 20, 270, 100, 20)
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Modality", 10, 310, 200, 90)
    $optApplication = GUICtrlCreateRadio("Application", 20, 330, 100, 20)
    GUICtrlSetState(-1, $GUI_CHECKED)
    $optSysModal = GUICtrlCreateRadio("System Modal", 20, 350, 100, 20)
    $optTaskModal = GUICtrlCreateRadio("Task Modal", 20, 370, 100, 20)
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Buttons", 230, 170, 200, 170)
    $optOK = GUICtrlCreateRadio("OK", 240, 190, 100, 20)
    GUICtrlSetState(-1, $GUI_CHECKED)
    $optOkCancel = GUICtrlCreateRadio("OK, Cancel", 240, 210, 100, 20)
    $optYesNo = GUICtrlCreateRadio("Yes, No", 240, 230, 100, 20)
    $optYesNoCancel = GUICtrlCreateRadio("Yes, No, Cancel", 240, 250, 100, 20)
    $optAbortRetryIgnore = GUICtrlCreateRadio("Abort, Retry, Ignore", 240, 270, 120, 20)
    $optRetryCancel = GUICtrlCreateRadio("Retry, Cancel", 240, 290, 100, 20)
    $optCancelRetryContinue = GUICtrlCreateRadio("Cancel, Retry, Continue", 240, 310, 130, 20)
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Miscellaneous", 10, 410, 200, 90)
    $optNothing = GUICtrlCreateRadio("Nothing", 20, 430, 100, 20)
    GUICtrlSetState(-1, $GUI_CHECKED)
    $optTopMost = GUICtrlCreateRadio("Top-most attribute set", 20, 450, 130, 20)
    $optRightJust = GUICtrlCreateRadio("Right-justified title/text", 20, 470, 150, 20)
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Default Buttons", 230, 350, 200, 90)
    $optFirst = GUICtrlCreateRadio("First Button", 240, 370, 130, 20)
    GUICtrlSetState(-1, $GUI_CHECKED)
    $optSecond = GUICtrlCreateRadio("Second Button", 240, 390, 130, 20)
    GUICtrlSetState(-1, $GUI_DISABLE)
    $optThird = GUICtrlCreateRadio("Third Button", 240, 410, 130, 20)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    GUICtrlCreateGroup("Timeout", 230, 450, 200, 50)
    $Timeout = GUICtrlCreateInput("", 240, 470, 100, 20, $ES_NUMBER)
    GUICtrlSetTip(-1, "Optional Timeout in seconds. After the timeout has elapsed the message box will be automatically closed.")
    GUICtrlCreateGroup("", -99, -99, 1, 1) ;close group

    [/autoit] [autoit][/autoit] [autoit]

    $BTNPREVIEW = GUICtrlCreateButton("&Preview", 10, 510, 100)
    GUICtrlSetTip(-1, "Show the MessageBox")
    $BTNCOPY = GUICtrlCreateButton("&Copy", 120, 510, 100)
    GUICtrlSetTip(-1, "Copy the generated AutoIt code to the Clipboard")
    $BTNEXIT = GUICtrlCreateButton("&Exit", 230, 510, 100)
    GUICtrlSetTip(-1, "Quit the program")

    [/autoit] [autoit][/autoit] [autoit]

    $Button = $optOK

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState() ; will display an empty dialog box

    [/autoit] [autoit][/autoit] [autoit]

    ; Run the GUI until the dialog is closed
    While 1
    $MSG = GUIGetMsg()
    Select
    Case $MSG = $GUI_EVENT_CLOSE Or $MSG = $BTNEXIT
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optOK
    $Button = $optOK
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_DISABLE)
    GUICtrlSetState($optThird, $GUI_DISABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optOkCancel
    $Button = $optOkCancel
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_ENABLE)
    GUICtrlSetState($optThird, $GUI_DISABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optYesNo
    $Button = $optYesNo
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_ENABLE)
    GUICtrlSetState($optThird, $GUI_DISABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optYesNoCancel
    $Button = $optYesNoCancel
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_ENABLE)
    GUICtrlSetState($optThird, $GUI_ENABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optAbortRetryIgnore
    $Button = $optAbortRetryIgnore
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_ENABLE)
    GUICtrlSetState($optThird, $GUI_ENABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optRetryCancel
    $Button = $optRetryCancel
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_ENABLE)
    GUICtrlSetState($optThird, $GUI_DISABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $optCancelRetryContinue
    $Button = $optCancelRetryContinue
    GUICtrlSetState($optFirst, $GUI_CHECKED)
    GUICtrlSetState($optFirst, $GUI_ENABLE)
    GUICtrlSetState($optSecond, $GUI_ENABLE)
    GUICtrlSetState($optThird, $GUI_ENABLE)

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $BTNPREVIEW
    MsgBox(_SetFlag($iFlag), GUICtrlRead($TITLE), GUICtrlRead($TEXT), GUICtrlRead($Timeout))

    [/autoit] [autoit][/autoit] [autoit]

    Case $MSG = $BTNCOPY
    $asMsgText = StringSplit(GUICtrlRead($TEXT), @CRLF, 1)
    If $asMsgText[0] = 1 Then
    $sText = GUICtrlRead($TEXT)
    Else
    $sText = $asMsgText[1]

    [/autoit] [autoit][/autoit] [autoit]

    For $iCtr = 2 To $asMsgText[0]
    $sText = $sText & Chr(34) & " & @CRLF & " & Chr(34) & $asMsgText[$iCtr]
    Next

    [/autoit] [autoit][/autoit] [autoit]

    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Select
    Case $Button = $optOK
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    " Case Else ;OK" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button = $optOkCancel
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 1 ;OK" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    "EndSelect"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 1 ;OK" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button = $optYesNo
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 6 ;Yes" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 7 ;No" & @CRLF & @CRLF & _
    "EndSelect"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 6 ;Yes" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 7 ;No" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button = $optYesNoCancel
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 6 ;Yes" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 7 ;No" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    "EndSelect"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 6 ;Yes" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 7 ;No" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button = $optAbortRetryIgnore
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 3 ;Abort" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 4 ;Retry" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 5 ;Ignore" & @CRLF & @CRLF & _
    "EndSelect"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 3 ;Abort" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 4 ;Retry" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 5 ;Ignore" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button = $optRetryCancel
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 4 ;Retry" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    "EndSelect"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 4 ;Retry" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $Button = $optCancelRetryContinue
    If GUICtrlRead($Timeout) = "" Then
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 10 ;Try Again" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 11 ;Continue" & @CRLF & @CRLF & _
    "EndSelect"
    Else
    $msgbox = "Dim $iMsgBoxAnswer" & @CRLF & _
    "$iMsgBoxAnswer = MsgBox(" & _SetFlag($iFlag) & "," & Chr(34) & GUICtrlRead($TITLE) & Chr(34) & "," _
    & Chr(34) & $sText & Chr(34) & "," & GUICtrlRead($Timeout) & ")" & @CRLF & _
    "Select" & @CRLF & _
    " Case $iMsgBoxAnswer = 2 ;Cancel" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 10 ;Try Again" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = 11 ;Continue" & @CRLF & @CRLF & _
    " Case $iMsgBoxAnswer = -1 ;Timeout" & @CRLF & @CRLF & _
    "EndSelect"
    EndIf
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    ClipPut($msgbox)
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    WEnd
    EndFunc ;==>_Main

    [/autoit] [autoit][/autoit] [autoit]

    ;===============================================================================
    ;
    ; Function Name: _SetFlag()
    ; Description: Set the flag that indicates the type of message box and the
    ; possible button combinations.
    ; Parameter(s): $iFlag - Flag
    ; Requirement(s): None
    ; Return Value(s): On Success - Returns the message box flag
    ; None
    ; Author(s): Giuseppe Criaco <[email='gcriaco@quipo.it'][/email]>
    ;
    ;===============================================================================
    ;

    [/autoit] [autoit][/autoit] [autoit]

    Func _SetFlag($iFlag)
    $iFlag = 0

    [/autoit] [autoit][/autoit] [autoit]

    ;Icons
    Select
    Case GUICtrlRead($optWarning) = $GUI_CHECKED
    $iFlag = $iFlag + 48
    Case GUICtrlRead($optInfo) = $GUI_CHECKED
    $iFlag = $iFlag + 64
    Case GUICtrlRead($optCritical) = $GUI_CHECKED
    $iFlag = $iFlag + 16
    Case GUICtrlRead($optQuestion) = $GUI_CHECKED
    $iFlag = $iFlag + 32
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    ;Modality
    Select
    Case GUICtrlRead($optSysModal) = $GUI_CHECKED
    $iFlag = $iFlag + 4096
    Case GUICtrlRead($optTaskModal) = $GUI_CHECKED
    $iFlag = $iFlag + 8192
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    ;Buttons
    Select
    Case GUICtrlRead($optOkCancel) = $GUI_CHECKED
    $iFlag = $iFlag + 1
    Case GUICtrlRead($optYesNo) = $GUI_CHECKED
    $iFlag = $iFlag + 4
    Case GUICtrlRead($optYesNoCancel) = $GUI_CHECKED
    $iFlag = $iFlag + 3
    Case GUICtrlRead($optAbortRetryIgnore) = $GUI_CHECKED
    $iFlag = $iFlag + 2
    Case GUICtrlRead($optRetryCancel) = $GUI_CHECKED
    $iFlag = $iFlag + 5
    Case GUICtrlRead($optCancelRetryContinue) = $GUI_CHECKED
    $iFlag = $iFlag + 6
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    ;Miscellaneous
    Select
    Case GUICtrlRead($optTopMost) = $GUI_CHECKED
    $iFlag = $iFlag + 262144
    Case GUICtrlRead($optRightJust) = $GUI_CHECKED
    $iFlag = $iFlag + 5244288
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    ;Default Buttons
    Select
    Case GUICtrlRead($optSecond) = $GUI_CHECKED
    $iFlag = $iFlag + 256
    Case GUICtrlRead($optThird) = $GUI_CHECKED
    $iFlag = $iFlag + 512
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    Return $iFlag
    EndFunc ;==>_SetFlag

    [/autoit]
  • Hier nochmal ne kürzere und (hoffentlich) verständliche Version deines Scripts mit 2 zusätzlichen Funktionen:

    Spoiler anzeigen
    [autoit]

    ; Includes
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <ButtonConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    ; Variablen
    Dim $Checkbox[4], $art = 0

    [/autoit] [autoit][/autoit] [autoit]

    ; GUI
    #Region ### START Koda GUI section ### Form=
    $Form1_1 = GUICreate("MsgBox Generator | Gugi", 285, 210, 471, 210)
    $Label1 = GUICtrlCreateLabel("Fenstername:", 8, 8, 68, 17)
    $Label2 = GUICtrlCreateLabel("Text:", 8, 48, 28, 17)
    $Label3 = GUICtrlCreateLabel("Art:", 8, 96, 20, 17)
    $Input1 = GUICtrlCreateInput("", 8, 24, 265, 21)
    $Input2 = GUICtrlCreateInput("", 8, 72, 265, 21)
    $Button1 = GUICtrlCreateButton("Zeig meine MsgBox!", 8, 168, 265, 33, $WS_GROUP)
    $Checkbox[0] = GUICtrlCreateCheckbox("OK", 8, 120, 97, 17)
    $Checkbox[1] = GUICtrlCreateCheckbox("OK, Abbrechen", 8, 144, 97, 17)
    $Checkbox[2] = GUICtrlCreateCheckbox("Ja, Nein", 120, 120, 97, 17)
    $Checkbox[3] = GUICtrlCreateCheckbox("Ja, Nein, Abbrechen", 120, 144, 145, 17)
    ; Hier werden 4 Checkboxen erzeugt. Die IDs werden in einem 4-dimensionalem Array gespeichert, damit sie später in einer For-Schleife gebrauch finden können
    GUICtrlSetState($Checkbox[0],$GUI_CHECKED) ; setzt bei der 1. Checkbox einen Haken
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    ; While Schleife zur GUI
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Checkbox[0]
    _uncheckCB(0)
    $art = 0 ; wird später als Flag zur MsgBox enutzt
    Case $Checkbox[1]
    _uncheckCB(1)
    $art = 1
    Case $Checkbox[2]
    _uncheckCB(2)
    $art = 4
    Case $Checkbox[3]
    _uncheckCB(3)
    $art = 3
    Case $Button1
    $text1 = Guictrlread($Input1)
    $text2 = Guictrlread($input2)
    SoundPlay("Trompete.wav")
    MsgBox($art, $text1, $text2) ; Erzeugt MsgBox
    InputBox("AutoIt Code", "Der Code für dein Scipt:", "MsgBox( " & $art & ", " & $text1 & ", " & $text2 & ")") ; Gibt den Code in einer Inputbox aus, damit er kopiert werden kann
    EndSwitch
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    ;Funkionen
    Func _uncheckCB($CB) ; Deaktiviert alle Checkboxen mit Außnehme der angegebenen Checkbox
    For $i = 0 To 3
    If $i == $CB Then ContinueLoop ; Wenn $i die Nummer der angegebenen Checkbox hat, wird der 2. Schritt übersprungen
    GUICtrlSetState($Checkbox[$i], $GUI_UNCHECKED) ; Deaktiviert eine der Checkboxen
    Next
    EndFunc

    [/autoit]
    Spoiler anzeigen

    Grundkenntnisse in: C++, JavaScript
    Sehr gute Kenntnisse: PHP, JAVA, C und näturlich AutoIt


    Klaviatur, Anhang UDF, GDI+ Mühle

    Zitat

    "Wenn einen um 20h der Pizzadienst anruft und fragt, ob man's nur vergessen hat und ob man das gleiche
    möchte wie immer -- dann sollte man sein Bestellverhalten evtl überdenken"


  • Ich Krieg was besseres hin wie ihr beide zusammen... werdet ihr schon sehn^^
    naja kann zwar bisschen dauern aber egal ;)

  • habs mal überflogen.
    gibt es eig. nicht mit AutoIt ein Beispiel von einer MsgBox mit Flags usw.???
    ist in einem Gui Ordner...

  • habs mal überflogen.
    gibt es eig. nicht mit AutoIt ein Beispiel von einer MsgBox mit Flags usw.???
    ist in einem Gui Ordner...

    schau dir mal das thema genau an, hab da auch schon nen msgbox generator gebastelt wo man flag auswählen kann


    achja, könnt ihr mir das mit radiobutton und checkbox erklären? also das was passieren soll wenn z.b. radio button1 + radiobutton2 checked sind

    Einmal editiert, zuletzt von Gugi (17. Mai 2010 um 19:57)