Что нового

[Массивы] Как работать с массивом из значений полученных из текстового поля GUI?

vsavelyev

Новичок
Сообщения
18
Репутация
0
Имеется текстовая область GUI в которую вносится перечень запросов в виде:

запрос1
запрос2
запрос3
...

Требуется из этого поля вытаскивать в цикле каждый запрос по отдельности и обрабатывать определенным образом. Собственно вопрос, как вытащить эти запросы поштучно? а то все получается так - запрос1запрос2запрос3. Как его можно разбить на массив и обработать в цикле? (Если можно на каком-нибудь элементарном примере)
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
vsavelyev,
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiEdit.au3>

$iCount = Random(10, 20, 1)
GUICreate('Edit')
$iEdit = GUICtrlCreateEdit('', 10, 10, 100, 200, BitOR($GUI_SS_DEFAULT_EDIT, $ES_AUTOVSCROLL, $WS_VSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN))
For $i = 0 To $iCount - 1
	GUICtrlSetData($iEdit, 'Line ' & $i & @CRLF, 1)
Next
GUICtrlSetData($iEdit, 'Line ' & $iCount, 1)
$hEdit = GUICtrlGetHandle($iEdit)
$iBtn = GUICtrlCreateButton('Test', 150, 20, 100, 30)
GUISetState()

While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			Exit
		Case $iBtn
			;First:
			$sTxt = GUICtrlRead($iEdit)
			$aTxt = StringSplit($sTxt, @CRLF, 3)
			$sTxt = ''
			For $i = 0 To UBound($aTxt) - 1
				ConsoleWrite('Line number: ' & $i & ', line text: ' & $aTxt[$i] & @LF)
			Next
			$aTxt = 0
			ConsoleWrite('---' & @LF)
			;Second:
			For $i = 0 To _GUICtrlEdit_GetLineCount($hEdit) - 1
				ConsoleWrite('Line number: ' & $i & ', line text: ' & _GUICtrlEdit_GetLine($hEdit, $i) & @LF)
			Next
	EndSwitch
WEnd
 
Верх