Ersetzt die aktuelle Auswahl
#include <GuiEdit.au3>
_GUICtrlEdit_ReplaceSel ( $hWnd, $sText [, $bUndo = True] )
$hWnd | Control-ID / Handle des Controls |
$sText | String der den neuen Text enthält. |
$bUndo | [optional] legt fest, ob die Ersetzoperation rückgängig gemacht werden kann: True - Die Operation kann rückgängig gemacht werden. False - Die Operation kann nicht rückgängig gemacht werden. |
Es ist _GUICtrlEdit_ReplaceSel() zu verwenden um nur einen Teil des Textes in dem Edit-Control zu ersetzen.
Falls es dort keine aktuelle Markierung gibt, wird der neue Text an der aktuellen Stelle im Fenster eingefügt.
- - - - - - - - Erklärung der Controls - - - - - - - -
_GUICtrlEdit_GetSel, _GUICtrlEdit_SetSel
#include <GUIConstantsEx.au3>
#include <GuiEdit.au3>
#include <GuiStatusBar.au3>
#include <MsgBoxConstants.au3>
#include <WindowsConstants.au3>
Example()
Func Example()
Local $hStatusBar, $idEdit, $hGui
Local $sWow64 = ""
If @AutoItX64 Then $sWow64 = "\Wow6432Node"
Local $sFile = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE" & $sWow64 & "\AutoIt v3\AutoIt", "InstallDir") & "\include\changelog.txt"
Local $aPartRightSide[3] = [200, 378, -1]
; Erstellt eine GUI
$hGui = GUICreate("Edit: Markierung ersetzen", 400, 300)
$idEdit = GUICtrlCreateEdit("", 2, 2, 394, 268, BitOR($ES_WANTRETURN, $WS_VSCROLL))
$hStatusBar = _GUICtrlStatusBar_Create($hGui, $aPartRightSide)
_GUICtrlStatusBar_SetIcon($hStatusBar, 2, 97, "shell32.dll")
GUISetState(@SW_SHOW)
; Ränder setzen
_GUICtrlEdit_SetMargins($idEdit, BitOR($EC_LEFTMARGIN, $EC_RIGHTMARGIN), 10, 10)
; Text setzen
_GUICtrlEdit_SetText($idEdit, FileRead($sFile))
; Markierung setzen
_GUICtrlEdit_SetSel($idEdit, 0, 8)
MsgBox($MB_SYSTEMMODAL, "Information", "Markierung ersetzen")
_GUICtrlEdit_ReplaceSel($idEdit, StringFormat("%d/%2d/%4d", @MON, @MDAY, @YEAR))
; Die Schleife wiederholt sich, bis der Benutzer die Beenden-Aktion der GUI auslöst.
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>Example