Menü neue Datei erstellen und öffnen

  • Hallo,

    ich möchte mit dem Menü eine neue Datei: TXT, CSV, JPG, PNG... erzeugen.
    Wenn ich die Datei öffnen will, möchte ich die Dateien filtern. (...wie in Scite)

    Habe alles mögliche versucht, kann mir jemand mal ein Beispiel machen,
    wie man das korrekt lösen kann?


    Hier mein Menü:

    [autoit]


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

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

    $Form1_1 = GUICreate("Form1", 615, 440, 245, 143)
    $Datei = GUICtrlCreateMenu("&Datei")
    $mnNew = GUICtrlCreateMenuItem("&Neu", $Datei)
    $mnOpen = GUICtrlCreateMenuItem("&Öffnen", $Datei)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $Datei
    Case $mnNew
    Case $mnOpen
    EndSwitch
    WEnd

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

    Grüße
    Ilse ;)

  • Das Case $Datei brauchst du nich ansonsten:

    [autoit]

    FileOpenDialog
    _FileCreate

    [/autoit]
  • Hallo Milla,

    mit _FileCreate hatte ich auch schon probiert,
    Benötige ich zusätzlich eine Inputbox für den Dateinamen?

    Das Problem ist der Dateiname und das wählbare Suffix.

    Angenommen ich erstelle eine Datei.csv mit dem Menü.

    Kannst du mir ein Beispiel machen?


    Grüße
    Ilse ;)

  • [autoit]

    #Include <File.au3>

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

    _FileCreate(@DesktopDir & "\lala.png")

    [/autoit]
  • Die Frage ist: wo kann der Benutzer:

    • lalala eingeben
    • png oder jpg wählen


    Beispiel Scite speichern unter...

    • Man kann im Menü speichern wählen
    • Man kann den Dateinamen eintragen
    • Man kann den Dateityp bestimmen

    Geht das auch mit Datei Neu???

    ?( Ilse

  • Der FileOpenDialog stellt dir nur die oberfläche zur verfügung und schreibt die Angeben in die von dir gewählte Variable.
    Dann kannst du das FileCreate mit diesen Werten aufrufen, das bekommt der user nicht zu sehen.

    Das könnte dann so aussehen:

    [autoit]


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

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

    $Form1_1 = GUICreate("Form1", 615, 440, 245, 143)
    $Datei = GUICtrlCreateMenu("&Datei")
    $mnNew = GUICtrlCreateMenuItem("&Neu", $Datei)
    $mnOpen = GUICtrlCreateMenuItem("&Öffnen", $Datei)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit

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

    Case $mnNew
    $FileToCreate = FileSaveDialog("Neue Datei erstellen und speichern", "C:\", "TXT(*.txt)|CSV(*.csv)|JPG(*.jpg)|PNG(*.png)")
    Case $mnOpen
    $FileToOpen = FileOpenDialog("Datei zum öffnen wählen", "C:\", "TXT(*.txt)|CSV(*.csv)|JPG(*.jpg)|PNG(*.png)")
    EndSwitch
    WEnd

    [/autoit]


    Mit den beiden Variablen kannst du dann die datei erstellen oder Öffnen.
    Sieh es dir einfach an.

  • Du kannst alternativ auh den FileSaveDialog verwenden ;)

    Edit: Lol 3 Posts in einer Minute...

    Einmal editiert, zuletzt von progandy (5. Januar 2011 um 18:30)