Try this:
#include <WindowsConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiListView.au3>
$Debug_LV = False ; Check ClassName being passed to ListView functions, set to True and use a handle to another control to see it work
Global $hForm, $hListView
_Main()
Func _Main()
$hForm = GUICreate("ListView Set Column Width", 400, 300, -1, -1, $WS_OVERLAPPEDWINDOW)
$hListView = GUICtrlCreateListView("Column 1|Column 2|Column 3|Column 4", 2, 2, 394, 268)
GUIRegisterMsg($WM_SIZING, "_RegisterMsg")
GUIRegisterMsg($WM_SIZE, "_RegisterMsg")
GUISetState()
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
GUIDelete()
EndFunc ;==>_Main
Func _RegisterMsg($hWnd, $Msg, $WParam, $LParam)
Local $iColCount, $aGetSize, $iWidth
$iColCount = _GUICtrlListView_GetColumnCount($hListView)
$aGetSize = WinGetClientSize($hWnd)
$iWidth = Int($aGetSize[0] / $iColCount)
For $i = 0 To $iColCount
_GUICtrlListView_SetColumnWidth($hListView, $i, $iWidth)
Next
EndFunc
Regards,
João Carlos.