1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
void InitListViewColumns2(HWND hWndList)
{
LV2.mask=LVCF_TEXT|LVCF_WIDTH|LVCF_SUBITEM;
LV2.cx=96;
LV2.pszText=TEXT("Código");
ListView_InsertColumn(hWndList,0,&LV2);
LV2.cx=300;
LV2.pszText=TEXT("Nome do Produto");
ListView_InsertColumn(hWndList,1,&LV2);
LV2.cx=96;
LV2.pszText=TEXT("Preço");
ListView_InsertColumn(hWndList,2,&LV2);
LV2.cx=96;
LV2.pszText=TEXT("Localização");
ListView_InsertColumn(hWndList,3,&LV2);
LV2.cx=96;
LV2.pszText=TEXT("Quantidade");
ListView_InsertColumn(hWndList,4,&LV2);
LV2.cx=96;
LV2.pszText=TEXT("Data");
ListView_InsertColumn(hWndList,5,&LV2);
LI2.mask=0x00000001;
ListView_SetExtendedListViewStyle(hWndList,0x00000020|0x01000000);
}
int AddItem2(HWND LIST,char *codigo,char *Produto,char *Preco,char *Localizacao,char *Quantidade,char *Data,char *bitmap)
{
LI2.iItem=ListView_GetItemCount(LIST);
ListView_InsertItem(LIST,&LI2);
ListView_SetItemText(LIST,LI2.iItem,0,codigo);
ListView_SetItemText(LIST,LI2.iItem,1,Produto);
ListView_SetItemText(LIST,LI2.iItem,2,Preco);
ListView_SetItemText(LIST,LI2.iItem,3,Localizacao);
ListView_SetItemText(LIST,LI2.iItem,4,Quantidade);
ListView_SetItemText(LIST,LI2.iItem,5,Data);
BITMAPLIST.insert(BITMAPLIST.begin(),bitmap);
return(ListView_GetItemCount(LIST));
};
LRESULT CALLBACK SEARCHPROC(HWND janela,UINT msg,WPARAM wp,LPARAM lp)
{
switch(msg)
{
case WM_CREATE:
EnableWindow(Janela,0);
//ListView
SLISTVIEW=CreateWindow("SysListView32","",WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EDITLABELS,10,40,375,325,janela,0,0,0);
InitListViewColumns2(SLISTVIEW);
ListView_SetColumnWidth(SLISTVIEW,0,48);
ListView_SetColumnWidth(SLISTVIEW,1,96);
ListView_SetColumnWidth(SLISTVIEW,2,48);
char TEXT1[2048],TEXT2[2048],TEXT3[2048],TEXT4[2048],TEXT5[2048],TEXT6[2048];
for(unsigned int i=0;i<TempList.size();i++)
{
ListView_GetItemText(List,TempList[i],0,TEXT1,2048);
ListView_GetItemText(List,TempList[i],1,TEXT2,2048);
ListView_GetItemText(List,TempList[i],2,TEXT3,2048);
ListView_GetItemText(List,TempList[i],3,TEXT4,2048);
ListView_GetItemText(List,TempList[i],4,TEXT5,2048);
ListView_GetItemText(List,TempList[i],5,TEXT6,2048);
AddItem2(SLISTVIEW,TEXT1,TEXT2,TEXT3,TEXT4,TEXT5,TEXT6,"");
POINTERBIT.push_back(TempList[i]);
}
USEPOINTER=1;
break;
case WM_NOTIFY:
switch(((NMHDR*)lp)->code)
{
case NM_DBLCLK://Abrir produto diretamente
SLISTINDEX=ListView_GetSelectionMark(List);
Parser.str("");
Parser<<SLISTINDEX<<" "<<wp<<" ";
MessageBoxA(0,Parser.str().c_str(),"Item selected",MB_OK);
ListIndex=ListView_GetItemCount(List)-POINTERBIT[SLISTINDEX];
break;
}
break;
default:return DefWindowProc(janela,msg,wp,lp);
}
return(0);
}
|