#include <GuiListBox.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

$Debug_LB = False ; Проверяет ClassName передаваемый в ListBox функции. Установите True и используйте дескриптор от другого элемента, чтобы увидеть как это работает

_Main()

Func _Main()
	Local $hListBox

	; Создаёт GUI
	GUICreate("Обновляет горизонтальную полосу прокрутки", 400, 296)
	$hListBox = GUICtrlCreateList("", 2, 2, 396, 296, BitOR($LBS_NOTIFY, $LBS_SORT, $WS_HSCROLL, $WS_VSCROLL))
	GUISetState()

	; Добавляет длинную строку
	_GUICtrlListBox_AddString($hListBox, "AutoIt v3 - бесплатный бейсикоподобный скриптовой язык предназначенный для автоматизации окон GUI.")

	; Получает текущий горизонтальный размер
	MsgBox(4160, "Информация", "Горизонтальный размер: " & _GUICtrlListBox_GetHorizontalExtent($hListBox))

	; Обновляет горизонтальную полосу прокрутки
	_GUICtrlListBox_UpdateHScroll($hListBox)

	; Получает текущий горизонтальный размер
	MsgBox(4160, "Информация", "Горизонтальный размер: " & _GUICtrlListBox_GetHorizontalExtent($hListBox))

	; Цикл выполняется, пока окно не будет закрыто
	Do
	Until GUIGetMsg() = $GUI_EVENT_CLOSE
	GUIDelete()
EndFunc   ;==>_Main