Und schon wieder eine Frage:
Wie kann ich eine einzelne Zeile in einem Edit ersetzen
Dankeschön für jede Antwort! (So langsam kann ich mir das mit in die Signatur schreiben )
Und schon wieder eine Frage:
Wie kann ich eine einzelne Zeile in einem Edit ersetzen
Dankeschön für jede Antwort! (So langsam kann ich mir das mit in die Signatur schreiben )
was meinst Du mit "in einem Edit ersetzen"
Meinst Du in etwa so ... ???
#include <Constants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 633, 447, 193, 125)
$IDC_EDIT = GUICtrlCreateEdit('Anton'&@crlf&'Bertie'&@crlf&'Det'&@crlf, 56, 72, 473, 257)
$IDC_BUTTON = GUICtrlCreateButton ('OK', 20, 400, 80)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $IDC_BUTTON
GUICtrlSetData ($IDC_EDIT, _
StringReplace (GUICtrlRead ($IDC_EDIT), 'Bertie', 'Ersatztext'))
EndSwitch
WEnd
LG
Greenhorn
Da ich gerade langweile hatte, habe ich dir mal ein Beispiel geschrieben. Ich denke das macht das was du suchst.
#include <GuiEdit.au3>
#include <GuiConstantsEx.au3>
Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]_Main()
[/autoit] [autoit][/autoit] [autoit]Func _Main()
Local $hEdit, $hInput1, $hInput2, $hButton, $nMsg, $sSource, $sDest, $iZeile
Local $sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt", "InstallDir") & "\include\changelog.txt"
; Create GUI
GUICreate("Edit Get Line", 400, 400)
$hEdit = GUICtrlCreateEdit("", 2, 2, 394, 268)
GUICtrlCreateLabel("Welche Zeile soll ausgetauscht werden ?", 2, 290, 200, 17)
$hInput1 = GUICtrlCreateInput("", 2, 310, 20, 17)
GUICtrlCreateLabel("Ersatztext", 2, 330, 200, 17)
$hInput2 = GUICtrlCreateInput("", 2, 350, 380, 17)
GUISetState()
$hButton = GUICtrlCreateButton("Ersetzen", 2, 370, 100, 17)
_GUICtrlEdit_SetText($hEdit, FileRead($sFile))
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $hButton
$iZeile = GUICtrlRead($hInput1)
If StringIsInt($iZeile) Then
$sSource = _GUICtrlEdit_GetLine($hEdit, $iZeile - 1)
$sDest = GUICtrlRead($hInput2)
GUICtrlSetData($hEdit, StringReplace(GUICtrlRead($hEdit), $sSource, $sDest))
Else
MsgBox(0,"Info","Zeilenauswahl ist keine Nummer ")
ContinueLoop
EndIf
EndSwitch
WEnd
GUIDelete()
EndFunc ;==>_Main
Hab auch mal schnell was zusammengeschrieben.
Vielleicht kannst hilft es dir ja auf die Sprünge
#include <GuiEdit.au3>
#include <GUIConstantsEx.au3>
$sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt", "InstallDir") & "\include\changelog.txt"
[/autoit] [autoit][/autoit] [autoit]; Create GUI
GUICreate("Edit Get Line", 400, 300)
$hEdit = GUICtrlCreateEdit("", 2, 2, 394, 268)
$zeile = 0 ;Zeilennummer
[/autoit] [autoit][/autoit] [autoit]GUISetState()
_GUICtrlEdit_SetText($hEdit, FileRead($sFile))
_GUICtrlEdit_BeginUpdate($hEdit)
$count = _GUICtrlEdit_GetLineCount($hEdit)
ConsoleWrite($count & @CRLF)
$index = _GUICtrlEdit_LineIndex($hEdit, $zeile)
$index2 = _GUICtrlEdit_LineIndex($hEdit, $zeile+1) - 2
ConsoleWrite($index & @CRLF)
ConsoleWrite($index2 & @CRLF)
Sleep(2000)
_GUICtrlEdit_SetSel($hEdit, $index, $index2)
_GUICtrlEdit_ReplaceSel($hEdit, "Hallo ich bin der Neue hier")
_GUICtrlEdit_EndUpdate($hEdit)
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
So geht es auch :
#include <GuiEdit.au3>
#include <GUIConstantsEx.au3>
$sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\AutoIt v3\AutoIt", "InstallDir") & "\include\changelog.txt"
[/autoit] [autoit][/autoit] [autoit]; Create GUI
GUICreate("Edit Get Line", 400, 300)
$hEdit = GUICtrlCreateEdit("", 2, 2, 394, 268)
$zeile = 2 ;Zeilennummer
[/autoit] [autoit][/autoit] [autoit]GUISetState()
_GUICtrlEdit_SetText($hEdit, FileRead($sFile))
_GUICtrlEdit_BeginUpdate($hEdit)
$count = _GUICtrlEdit_GetLineCount($hEdit)
ConsoleWrite($count & @CRLF)
$index = _GUICtrlEdit_LineIndex($hEdit, $zeile)
$index2 = _GUICtrlEdit_LineLength ($hEdit, $zeile)
ConsoleWrite($index & @CRLF)
ConsoleWrite($index2 & @CRLF)
Sleep(2000)
_GUICtrlEdit_SetSel($hEdit, $index, $index + $index2)
_GUICtrlEdit_ReplaceSel($hEdit, "Hallo ich bin der Neue hier")
_GUICtrlEdit_EndUpdate($hEdit)
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
Danke für die vielen Antworten!
ICh werde mir erst einmal alles in Ruhe anschauen