Must AutoIt
Сообщения: 3054
Благодарности: 1009
|
Профиль
|
Сайт
|
Отправить PM
| Цитировать
Как то так:
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GUIRichEdit.au3>
$sEditText = ''
$hGUI = GUICreate("Test Script", 300, 200)
$hRichEdit = _GUICtrlRichEdit_Create($hGUI, 'Some data with tags [img][/img], [b][/b], and more.', 20, 20, 260, 160, BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
GUISetState(@SW_SHOW, $hGUI)
AdlibRegister('_SetEdit', 100)
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
_GUICtrlRichEdit_Destroy($hRichEdit)
Exit
EndSwitch
WEnd
Func _SetEdit()
$aPos = _GUICtrlRichEdit_GetSel($hRichEdit)
$sData = _GUICtrlRichEdit_GetText($hRichEdit)
If $sEditText <> $sData Then
$sEditText = $sData
Else
Return
EndIf
_GUICtrlRichEdit_SetReadOnly($hRichEdit, True)
Dim $aTags[2][3] = [['[b][/b]', 'bo', 0x000000], ['[img][/img]', '', 0x0FFF00]]
For $i = 0 To UBound($aTags)-1
StringReplace($sData, $aTags[$i][0], '')
$iC = @extended
For $j = 1 To $iC
$iPos = StringInStr($sData, $aTags[$i][0], 2, $j)
_GUICtrlRichEdit_SetSel($hRichEdit, $iPos-1, $iPos + StringLen($aTags[$i][0])-1)
If $iPos Then
If $aTags[$i][1] <> '' Then
_GUICtrlRichEdit_SetCharAttributes($hRichEdit, '+' & $aTags[$i][1])
EndIf
_GUICtrlRichEdit_SetCharColor($hRichEdit, $aTags[$i][2])
EndIf
Next
_GUICtrlRichEdit_SetSel($hRichEdit, $aPos[0], $aPos[1])
_GUICtrlRichEdit_SetCharAttributes($hRichEdit, '-' & $aTags[$i][1])
;_GUICtrlRichEdit_SetCharColor($hRichEdit, Default)
Next
_GUICtrlRichEdit_SetReadOnly($hRichEdit, False)
EndFunc
|
-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.” Альберт Эйнштейн
P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»
http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community
Отправлено: 02:00, 26-08-2012
| #5
|