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

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

_Main()

Func _Main()
	Local $hCombo, $iButton

	; Создаёт GUI
	GUICreate("Установка ширины списка ComboBox", 400, 296, -1, -1, $WS_OVERLAPPEDWINDOW)
	$hCombo = GUICtrlCreateCombo("", 2, 2, 396, 296)
	$iButton = GUICtrlCreateButton('Ширина', 10, 30, 70, 25) ; измените размер окна и проверьте ширину выпадающего списка
	GUISetState()

	; Добавляет файлы
	_GUICtrlComboBox_BeginUpdate($hCombo)
	_GUICtrlComboBox_AddDir($hCombo, @WindowsDir & "\*.exe")
	_GUICtrlComboBox_EndUpdate($hCombo)

	; Устанавливает ширину выпадающего списка 500, но не менее самого Combo
	; Проверьте 0, с таким параметром ширина всегда равна Combo
	_GUICtrlComboBox_SetDroppedWidth($hCombo, 500)

	; Возвращает ширину выпадающего списка
	MsgBox(4160, "Информация", "Ширина выпадающего списка: " & _GUICtrlComboBox_GetDroppedWidth($hCombo))

	; Цикл выполняется, пока окно не будет закрыто
	While 1
		Switch GUIGetMsg()
			Case $iButton
				MsgBox(4160, "Информация", "Ширина выпадающего списка: " & _GUICtrlComboBox_GetDroppedWidth($hCombo))
			Case $GUI_EVENT_CLOSE
				Exit
		EndSwitch
	WEnd
EndFunc   ;==>_Main