Hallo zusammen,
ich versuche eine Funktion so zu schreiben, wenn jemand ein bestimmten Dateityp/format auswählt, das es auch mit diesen abspeichert. Der Benutzer hat mehrere Dateitypen zur auswahl und deshalb weiß ich nicht wie ich es schreiben soll, mit einer Dateityp weiß ich es, siehe Code. Ich hoffe es kann mir einer helfen?!
Spoiler anzeigen
#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#NoTrayIcon
; Hauptfenster
GUICreate("Speichern", 500, 400)
; Menüleiste
$menu = GUICtrlCreateMenu("Datei")
$item_oeffnen = GUICtrlCreateMenuItem("Öffnen...", $menu)
$item_save_as = GUICtrlCreateMenuItem("Speichern unter...", $menu)
GUICtrlCreateMenuItem("", $menu, -1) ; Hier wird ein Linie durchgezogen
$item_beenden = GUICtrlCreateMenuItem("Beenden", $menu)
; Schrift
$font = "Comic Sans MS"
$label = GUICtrlCreateLabel("Quelle", 10, 10, 50, 25)
GUICtrlSetFont($label, 12, 100, 1, $font)
GUICtrlSetColor($label, 0xfb00500)
; Edit
$edit = GUICtrlCreateEdit("", 10, 40, 480, 330, $WS_VSCROLL)
; Damit das Hauptfenster angezeigt wird
GUISetState()
While 1
$Msg = GUIGetMsg()
Switch $Msg
Case $GUI_EVENT_CLOSE, $item_beenden
Exit
Case $item_oeffnen
$open = FileOpenDialog("Öffnen...", @DesktopDir, "Textdokument (*.txt)|CFG-Dateien (*.cfg)")
$read = FileRead($open)
GUICtrlSetData($edit, $read)
Case $item_save_as
$save = FileSaveDialog ( "Speichern unter...", @DesktopDir, "Textdokument (*.txt)|CFG-Dateien (*.cfg)")
If $save Then $save &=".txt" ; Hier wird garantiert, das die Datei mit dieser Endung abgespeichert wird.
FileWrite($save, (GUICtrlRead($edit)))
EndSwitch
WEnd
[/autoit] [autoit][/autoit] [autoit]#cs
Die zweite Variante:
======================
If StringRight($save, 4) <> ".txt" Then $save = $save & ".txt"
#ce