GUICtrlCreateListView
Создаёт ListView в GUI.
GUICtrlCreateListView ( "text", left, top [, width [, height [, style = -1 [, exStyle = -1 ]]]] )
Параметры
text | Определение заголовка колонок. Каждый из них разделяются с помощью Opt("GUIDataSeparatorChar"). |
left |
Координата левого края. Если -1 - тогда координата в соответствии с GUICoordMode. |
top |
Координата верхнего края. Если -1 - тогда координата в соответствии с GUICoordMode. |
width |
[необязательный] Ширина элемента (по умолчанию предыдущее значение). |
height |
[необязательный] Высота элемента (по умолчанию предыдущее значение). |
style |
[необязательный] Стиль элемента. Смотрите Стили элементов GUI в приложении. -1 - по умолчанию : $LVS_SHOWSELALWAYS, $LVS_SINGLESEL принудительный стиль : $LVS_REPORT |
exStyle |
[необязательный] Расширенный стиль элемента. Смотрите таблицу расширенных стилей или таблицу расширенных стилей ListView. -1 - по умолчанию : $LVS_EX_FULLROWSELECT, $WS_EX_CLIENTEDGE |
Возвращаемое значение
Успех: | Возвращает идентификатор (controlID) нового элемента. |
Ошибка: | Возвращает 0. |
Примечания
Чтобы добавить пункты в ListView, используйте GUICtrlCreateListViewItemСм. также
GUICtrlCreateListViewItem, GUICtrlRegisterListViewSort, GUICoordMode (Опция), GUICtrlSetData, GUIGetMsg, GUIDataSeparatorChar (Опция)Пример
#include <ListViewConstants.au3>
#include <GUIConstantsEx.au3>
Local $hGUI, $ListView, $button, $item1, $item2, $item3, $msg, $clear, $width
$hGUI = GUICreate("ListView", 240, 260, 100, 200)
GUISetBkColor(0xd5d2af) ; устанавливает цвет фона Gui
$ListView = GUICtrlCreateListView("Колонка1|кол2|кол3 ", 10, 10, 220, 150);,$LVS_SORTDESCENDING)
GUICtrlSetBkColor(-1, 0xFFFEEE) ; устанавливает цвет фона ListView
$item1 = GUICtrlCreateListViewItem("пункт2|кол22|кол23", $ListView)
$item2 = GUICtrlCreateListViewItem("пункт1|кол12|кол13", $ListView)
GUICtrlSetImage(-1, @SystemDir & '\shell32.dll', 6, 0) ; устанавливает иконку пункту
$item3 = GUICtrlCreateListViewItem("пункт3|кол32|кол33", $ListView)
GUICtrlSetImage(-1, @SystemDir & '\shell32.dll', 4, 0)
$button = GUICtrlCreateButton("Текст выбранной строки", 45, 170, 150, 25)
$width = GUICtrlCreateButton("Установить ширину колонок", 35, 200, 170, 25)
$clear = GUICtrlCreateButton("Очистить", 85, 230, 70, 25)
GUISetState()
GUICtrlSetData($item2, "ПУНКТ1")
GUICtrlSetData($item3, "||КОЛ33")
GUICtrlDelete($item1)
While 1
Switch GUIGetMsg()
Case $button
MsgBox(0, "Текст выбранной строки", GUICtrlRead(GUICtrlRead($ListView)), 2, $hGUI)
Case $clear
GUICtrlSendMsg($ListView, $LVM_DELETEALLITEMS, 0, 0)
Case $width
GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 0, 80) ; 80 пиксель. Если -1 ($LVSCW_AUTOSIZE), то устанавливает по длине текста.
GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 1, 55) ; Если -2 ($LVSCW_AUTOSIZE_USEHEADER), то по длине текста в заголовка колонки, но не менее текста пунктов
GUICtrlSendMsg($ListView, $LVM_SETCOLUMNWIDTH, 2, 60) ; 60 пиксель. Если последняя колонка -2, то до правого края ListView
Case $ListView
MsgBox(4096, "ListView", "колонка=" & GUICtrlGetState($ListView), 2, $hGUI)
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd