Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 2)

Модерирует : gyra, Maz

Widok (01-06-2010 13:08): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

ViSiToR



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Код:
#include <GuiConstantsEx.au3>
#include <ButtonConstants.au3>
;
 
Global $sCharsTags_Table_File = @ScriptDir & "\Chars&Tags Table.ini"
 
$hGUI = GUICreate("Simple Text Colorizer", 300, 200)
 
GUICtrlCreateLabel("Text to colorize:", 10, 5, 140)
GUICtrlSetFont(-1, 10, 800)
 
$SourceText_Edit = GUICtrlCreateEdit("Enter text to colorize", 10, 20, 280, 60)
If ClipGet() <> "" Then GUICtrlSetData(-1, ClipGet())
 
GUICtrlCreateLabel("Colorized results:", 10, 85, 180)
GUICtrlSetFont(-1, 10, 800)
 
$Results_Edit = GUICtrlCreateEdit("", 10, 100, 280, 60)
 
$Copy_Button = GUICtrlCreateButton("Copy", 160, 170, 60, 20)
GUICtrlSetFont(-1, 8)
 
$CopyExit_Button = GUICtrlCreateButton("Copy && Exit", 230, 170, 62, 20)
GUICtrlSetFont(-1, 7.5)
 
$Colorize_Button = GUICtrlCreateButton("Colorize", 10, 170, 60, 20, $BS_DEFPUSHBUTTON)
$Exit_Button = GUICtrlCreateButton("Exit", 80, 200-30, 60, 20)
 
GUISetState(@SW_SHOW, $hGUI)
 
_ColorizeText_Proc(-1)
 
While 1
    $nMsg = GUIGetMsg()
 
    Switch $nMsg
        Case $GUI_EVENT_CLOSE, $Exit_Button
            Exit
        Case
$Colorize_Button
            $sColorized_Text
= _ColorizeText_Proc(GUICtrlRead($SourceText_Edit))
            GUICtrlSetData($Results_Edit, $sColorized_Text)
        Case $Copy_Button, $CopyExit_Button
            ClipPut(GUICtrlRead($Results_Edit))
 
            If $nMsg = $CopyExit_Button Then Exit
    EndSwitch
WEnd
 
Func
_ColorizeText_Proc($sText)
    If $sText = "" Then Return SetError(1, 0, 0)
 
    Local $sChars = "abcdefghijklmnpoqrstuvwxyzабвгдеёжзийклмнопрстуфхцчшщэюяьъ"
    Local $iChr_InStr, $iIniWrite_Error = 0
 
    Local $sColor_Tags = _
        "red|green|blue|brown|darkblue|purple|orange|gray|green|magna|indigo|blue|orange|brown|gray|purple|" & _
        "green|orange|magna|purple|orange|green|indigo|blue|red|darkgreen|darkyellow|brown|green|blue|brown|" & _
        "orange|green|green|purple|magna|green|blue|red|brown|orange|indigo|darkgreen|darkyellow|" & _
        "blue|red|green|orange|magna|purple|orange|green|indigo|blue|red|darkgreen|gray|brown|darkyellow"
 
    Local $aColor_Tags = StringSplit($sColor_Tags, "|")
    Local $aText = StringSplit($sText, "")
 
    If $sText = -1 Then ;Generating Chars&Tags Table file
        If FileExists($sCharsTags_Table_File) Then Return 1
 
        Local $aChars = StringSplit($sChars, "")
 
        For $i = 1 To $aChars[0]
            IniWrite($sCharsTags_Table_File, "Chars&Tags Table", $aChars[$i], $aColor_Tags[$i])
            If @error Then Return SetError(@error, 0, 0)
        Next
 
        Return
1
    EndIf
 
    Local
$aRead_CharsTags_Table = IniReadSection($sCharsTags_Table_File, "Chars&Tags Table")
 
    If Not @error Then
        $sChars = ""
        $aColor_Tags = ""
 
        Dim $aColor_Tags[$aRead_CharsTags_Table[0][0]+1]
 
        For $i = 1 To $aRead_CharsTags_Table[0][0]
            $sChars &= $aRead_CharsTags_Table[$i][0]
            $aColor_Tags[$i] = $aRead_CharsTags_Table[$i][1]
        Next
    EndIf

 
    $sText = ""
 
    For $i = 1 To $aText[0]
        $iChr_InStr = StringInStr($sChars, $aText[$i])
 
        If $iChr_InStr > 0 Then
            $sText &= "[color=" & $aColor_Tags[$iChr_InStr] & "]" & $aText[$i] & "[/color]"
        Else
            $sText &= $aText[$i]
        EndIf
    Next
 
    Return
$sText
EndFunc

Всего записей: 3251 | Зарегистр. 01-04-2006 | Отправлено: 16:42 21-04-2009 | Исправлено: ViSiToR, 18:52 21-04-2009
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 2)
Widok (01-06-2010 13:08): Лимит страниц. Продолжаем здесь.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru