Каким образом вывести список без сортировки значений по возрастанию.
Порядок должен быть как в консоли.
Порядок должен быть как в консоли.
Код:
#include <Array.au3>
#include <GUIConstantsEx.au3>
#include <GUIListBox.au3>
#include <WindowsConstants.au3>
$Form1 = GUICreate("Form1", 615, 437, 192, 124)
$List1 = GUICtrlCreateList("", 8, 16, 145, 305)
$List2 = GUICtrlCreateList("", 168, 16, 145, 305)
$List3 = GUICtrlCreateList("", 328, 16, 161, 305)
$Button1 = GUICtrlCreateButton("Button1", 32, 352, 75, 25)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1 ;Загружаем данные
$sText = FileRead(@ScriptDir & '\test.txt')
$sText = StringRegExpReplace($sText, '([\r\n]*$)', '')
$aText = StringSplit(StringStripCR($sText), @LF)
StringReplace($aText[1], ';', '')
$i2D = @extended + 1
Dim $aRes[$aText[0]][$i2D]
For $i = 1 To $aText[0]
$aTemp = StringSplit($aText[$i], ';')
For $j = 1 To $aTemp[0]
$aRes[$i - 1][$j - 1] = $aTemp[$j]
Next
If $aRes[$i-1][1] = '' and $i >= 8 Then
$RespIndex = $i ; Номер строки области
$RespName = $aRes[$i-1][0] ; Название области
GUICtrlSetData($List1, $RespName)
GUICtrlSetData($List2, "")
GUICtrlSetData($List3, "")
Else
EndIf
Next
$aText = 0
$aTemp = 0
;_ArrayDisplay($aRes)
Case $List1
$RespName = GUICtrlRead($List1)
GUICtrlSetData($List2, "")
GUICtrlSetData($List3, "")
$iIndex = _ArraySearch($aRes, $RespName, 7, 0, 0, 1)
$CityIndexStart = $iIndex + 1 ; Номер строки первого насленного пункта
Local $x = 1
While 1
If Not($aRes[$iIndex+$x][1] == '') Then
$CityIndex = $iIndex+$x ; Номер строки
$CityName = $aRes[$iIndex+$x][0] ; Название населенного пункта
GUICtrlSetData($List2, $CityName)
$CityIndexEnd = $CityIndex ; Номер строки последнего насленного пункта
Else
ExitLoop
EndIf
$x = $x + 1
WEnd
Case $List2
$CityName = GUICtrlRead($List2)
GUICtrlSetData($List3, "")
$IndexCity = _ArraySearch($aRes, $CityName, $CityIndexStart, $CityIndexEnd, 0, 1)
For $i = 1 to 19
$Param = $aRes[$IndexCity][$i]
ConsoleWrite($i & ' ' & $Param & @CRLF)
GUICtrlSetData($List3, $Param)
Next
ConsoleWrite(@CRLF)
EndSwitch
WEnd