Code: Select all
#SingleInstance Force
Data := { Element1 : { name : "Name1"
, Status : "+Check"}
, Element2 : { name : "Name3"
, Status : "-Check"}
, Element3 : { name : "Name4"
, Status : "-Check"}
, Element4 : { name : "Name4"
, Status : "-Check"}
, Element5 : { name : "Name4"
, Status : "+Check"}
, Element6 : { name : "Name4"
, Status : "-Check"} }
Gui Add, Edit, x100 y100 w500 h21 vSearchTerm gsearch
Gui Add, ListView, w500 h525 Checked , Tag Name|Status
For k, v in Data
LV_Add(v.status,k,v.status)
LV_ModifyCol()
Gui Show, w1090 h599 , Super Archive
return
Search:
GuiControlGet, SearchTerm
LV_Delete()
For k, v in Data
{
If (SearchTerm != "")
{
If InStr(k, SearchTerm)
{
if Data[k].Status = "+Check"
LV_Add("+Check", k,v.Count,v.status)
Else
LV_Add("-Check", k,v.Count,v.status)
}
}
Else
{
if Data[k].Status = "+Check"
LV_Add("+Check", k,v.Count,v.status)
Else
LV_Add("-Check", k,v.Count,v.status)
}
}
Return
Esc::ExitApp
But I'm having a problem,
How can I make the checked element stay in the ListView even if them name doesn't exist in SearchTerm