FileSaveDialog auslesen

  • Hallo Leute,

    wie kann ich die Funktion FileSaveDialog auslesen ?

    also ich will den benutzer zwingen ein Pfad zu hinterlassen. FileSaveDialog muss geöffnet werden und ein Pfad muss ausgesucht werden, solange das nicht getan wurde bleiben alle anderen buttons ausgegraut...

    habe schon viel gesucht und versucht jedoch war ich nicht fündig :(

    Einmal editiert, zuletzt von Baris (18. Juni 2010 um 11:52)

  • Ist doch ne einfache if abfrage oder?
    Lass man dein aktuelles script sehn.

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • hmm... ne klappt bei mir irgendwie nicht...


    [autoit]


    ;;;;SCREENSHOOTER;;;;;
    $hSearch = GUICtrlCreateButton("Speichern unter...", 390, 58, 110, 25, BitOR($WS_GROUP, $WS_BORDER))
    GUICtrlSetState(-1, $GUI_HIDE)
    $screenshot = GUICtrlCreateButton("SHOT", 350, 120, 200, 60, BitOR($WS_GROUP, $WS_BORDER), BitOR($WS_EX_CLIENTEDGE, $WS_EX_STATICEDGE))
    GUICtrlSetFont(-1, 12, 800, 2, "APL2")
    GUICtrlSetState(-1, $GUI_HIDE)
    ;;;;;;;;;;;;;;;;;;;;;;;
    Case $hSearch
    $pfad = FileSaveDialog("Datei speichern als...", @DesktopDir, "Alle(*.*)", 18)
    If StringRight($pfad, 3) <> "jpg" Or StringRight($pfad, 3) <> "bmp" Or StringRight($pfad, 3) <> "png" Then $pfad &= ".jpg"

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

    Case $screenshot
    WinSetState("Auto-Reg","",@SW_MINIMIZE)
    $hBmp = _ScreenCapture_Capture($pfad)
    _ScreenCapture_SaveImage($pfad, $hBmp)
    MsgBox(262192,"Auto-Reg Screenshooter","Screenshot gespeichert unter:"& $pfad)

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

    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

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


    habe ich in ein programm eingebaut, kann sein das was fehlt...

    habe schon die abfrage If $pfad == 1 or 2 then msgbox(0,"","")

    hat aber leider nicht geklappt

  • naja das ist auch kein lauffähiges script. Es drosselt immer die Motivation zu helfen, wenn man kein lauffähiges Script hat

    Das finden von Rechtschreibfehlern muss sofort und unverzüglich dem Autor gemeldet werden. Das eigennützige Verwenden dieser Rechtschreibfehler ist strengstens untersagt und kann mit Freiheitsenzug bestraft werden.

  • Hier wenigstens noch ein Beispiel.

    Spoiler anzeigen
    [autoit]

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

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

    $hGUI = GUICreate("Form1", 535, 160)
    $cPath = GUICtrlCreateInput("Input1", 25, 20, 340, 25)
    $cFSDialog = GUICtrlCreateButton("...", 375, 20, 30, 25)

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

    $cButton2 = GUICtrlCreateButton("Button2", 265, 70, 220, 65)
    $cButton3 = GUICtrlCreateButton("Button3", 25, 70, 220, 65)
    GUICtrlSetState($cButton2, $GUI_DISABLE)
    GUICtrlSetState($cButton3, $GUI_DISABLE)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $cFSDialog
    $sPath = FileSaveDialog("", "", "All (*.*)")
    If Not @error Then
    GUICtrlSetData($cPath, $sPath)
    GUICtrlSetState($cButton2, $GUI_ENABLE)
    GUICtrlSetState($cButton3, $GUI_ENABLE)
    EndIf
    EndSwitch
    WEnd

    [/autoit]
  • genau das habe ich gesucht Danke!

    Darter tut mir leid, habe nicht soviel zeit gerade... habe gedacht das reicht :(
    Trotzdem Danke für deine Hilfe