Hallo.
Ich habe letztens nicht gewusst, was ich mal scripten könnte, und da gab mir Schnitzel den Rat, doch mal Notepad nachzumachen.
Und das habe ich jetzt getan. Mein Programm heißt WordEditor, und kann *.txt Dateien lesen und schreiben .
Man kann die Schrift verändern, es gibt eine Such- und Ersetzfunktion.
Aber ihr könnt es euch ja mal selber anschauen.
Im Anhang ist die Exe Datei, mit Code.
Über Feedback würd ich mich freuen
WordEditor
-
-
Coole Sache
(Für mich persönlich wärs noch cool ein StringRegExp - Suchen & Ersetzen zu haben, aber das kann ich auch selbst einbauen ^^) -
schön schön ist doch ganz gut geworden.
und wenn dir mal wieder langweilig ist kannst dus mit recht vielen features ausbauen.Suchen mit RegEx is zum beispiel ziemlich praktisch wie SEuBo schon sagt.
oder diverse funktionen die man aus word kennt. also automatisch nummerierungs und aufzählungszeichen einfügen und so Spielereien
Da kann man immer schön rumbasteln -
Was wäre denn der Unterschied beim Suchen mit StringRegExp und meiner Suchfunktion??
-
kennste RegEx nicht?
schau dich mal unter StringRegExp um
dann könnte man zum beispiel mit /d eine zahl suchen, egal welche
-
RegExp kenn ich.
Ich meine nur wie dann die Funktion anders wäre als mit _GUICtrlEdit_Find ? -
Sieht gut aus
-
Is dir gut gelungen, jedoch suffixt dein Speichern die endung nicht.
Schau dir mal folgende FileSaveDialog funktion an, die ich auf AutoItScript.com gefunden habe.Spoiler anzeigen
[autoit]Func _FileSaveDialog($sTitle, $sInitDir, $sFilter = 'All (*.*)', $iOpt = 0, $sDefaultFile = "", $sDefaultExt = "", $mainGUI = 0)
[/autoit] [autoit][/autoit] [autoit]
Local $iFileLen = 65536
Local $iFlag = BitOR(BitShift(BitAND($iOpt, 2), -10), BitShift(BitAND($iOpt, 16), 3))
Local $asFLines = StringSplit($sFilter, '|'), $asFilter[$asFLines[0] * 2 + 1]
Local $i, $iStart, $iFinal, $suFilter = ''
$asFilter[0] = $asFLines[0] * 2
For $i = 1 To $asFLines[0]
$iStart = StringInStr($asFLines[$i], '(', 0, 1)
$iFinal = StringInStr($asFLines[$i], ')', 0, -1)
$asFilter[$i * 2 - 1] = StringStripWS(StringLeft($asFLines[$i], $iStart - 1), 3)
$asFilter[$i * 2] = StringStripWS(StringTrimRight(StringTrimLeft($asFLines[$i], $iStart), StringLen($asFLines[$i]) - $iFinal + 1), 3)
$suFilter = $suFilter & 'byte[' & StringLen($asFilter[$i * 2 - 1]) + 1 & '];byte[' & StringLen($asFilter[$i * 2]) + 1 & '];'
Next
Local $uOFN = DllStructCreate('dword;int;int;ptr;ptr;dword;dword;ptr;dword' & _
';ptr;int;ptr;ptr;dword;short;short;ptr;ptr;ptr;ptr;ptr;dword;dword')Local $usTitle = DllStructCreate('byte[' & StringLen($sTitle) + 1 & ']')
[/autoit] [autoit][/autoit] [autoit]
Local $usInitDir = DllStructCreate('byte[' & StringLen($sInitDir) + 1 & ']')
Local $usFilter = DllStructCreate($suFilter & 'byte')
Local $usFile = DllStructCreate('char[' & $iFileLen & ']')
Local $usExtn = DllStructCreate('byte[' & StringLen($sDefaultExt) + 1 & ']')
For $i = 1 To $asFilter[0]
DllStructSetData($usFilter, $i, $asFilter[$i])
NextDllStructSetData($usTitle, 1, $sTitle)
[/autoit] [autoit][/autoit] [autoit]
DllStructSetData($usInitDir, 1, $sInitDir)
DllStructSetData($usFile, 1, $sDefaultFile)
DllStructSetData($usExtn, 1, $sDefaultExt)
DllStructSetData($uOFN, 1, DllStructGetSize($uOFN))
DllStructSetData($uOFN, 2, $mainGUI)
DllStructSetData($uOFN, 4, DllStructGetPtr($usFilter))
DllStructSetData($uOFN, 7, 1)
DllStructSetData($uOFN, 8, DllStructGetPtr($usFile))
DllStructSetData($uOFN, 9, $iFileLen)
DllStructSetData($uOFN, 12, DllStructGetPtr($usInitDir))
DllStructSetData($uOFN, 13, DllStructGetPtr($usTitle))
DllStructSetData($uOFN, 14, $iFlag)
DllStructSetData($uOFN, 17, DllStructGetPtr($usExtn))
DllStructSetData($uOFN, 23, BitShift(BitAND($iOpt, 32), 5))$ret = DllCall('comdlg32.dll', 'int', 'GetSaveFileName', 'ptr', DllStructGetPtr($uOFN))
[/autoit]
If $ret[0] Then
Return StringStripWS(DllStructGetData($usFile, 1), 3)
Else
SetError(1)
Return ""
EndIf
EndFunc ;==>_FileSaveDialogMfG. PrideRage