Что нового

[Элементы GUI] Как создать редактируемую таблицу?

RAVAD

=)
Сообщения
4
Репутация
0
Здравствуйте! Совсем недавно начал работать с данным языком. Нужно в окне GUI создать таблицу с несколькими колонками, куда можно будет вручную вводить (или копировать значения с excel) и в дальнейшем их использовать. Количество столбцов будет фиксированное, а строк нет.
К примеру - нужна таблица, в которую вносишь серийные номера в колонку, после чего программа проверяет каждый серийник в программе.
 

ra4o

AutoIT Гуру
Сообщения
1,165
Репутация
246
Вот пример , как это можно реализовать с библиотекой "ListViewEditInput.au3" (во вложении)
Код:
#include "ListViewEditInput.au3"
#include <GuiListView.au3>

Opt("GuiOnEventMode",1)
$hGui=GUICreate("ListviewEditExample",480,340,-1,-1)
$hListView=GUICtrlCreateListView('Серийный номер |Значение 1| значение 2| ввод 1 | ввод 2',10,10,460,280,$LVS_REPORT,$LVS_EX_GRIDLINES)

$hLabel=GUICtrlCreateLabel('Пока ничего не произошло',10,300,300,25)

for $i=0 to 10 step 1
	GUICtrlCreateListViewItem($i&':0'&'|'&$i&':1'&'|'&$i&':2',$hListView)
next

__ListViewEditInput_StartUp($hGui)
;Разрешаем редактирование только 3 и 4 колонок (отсчет от "0")
__ListViewEditInput_AddListview($hGui,$hListView,'3,4')

__ListViewEditInput_RegisterFunction($hListView,'_edited','Changed')

GUISetOnEvent($GUI_EVENT_CLOSE,'_close')
GUISetState(@SW_SHOW)

while 1
 sleep(150)
WEnd

Func _close()
	exit
EndFunc

Func _edited($ctrl,$index,$subIndex)
	GUICtrlSetData($hLabel,'Changed: '&$ctrl&': '&$index&':'&$subIndex&'   text: '&_GUICtrlListView_GetItemText($hListView, $index,$subIndex  ))
EndFunc
 

Вложения

  • ListViewEditInput.zip
    7.4 КБ · Просмотры: 35
  • Like
Реакции: Norm
Автор
R

RAVAD

=)
Сообщения
4
Репутация
0
Спасибо огромное! Буду продолжать "Химичить" :stars: :stars: :stars:
 
Верх