Voici un exemple de ListView de tous les noms (les pseudo) des personnes qui sont passer sur cppfrance.com (le 1 juillet a 21h05).
Il n'y a pas d'icone.
Mais bon, il y a le changement de couleur.
Cette source est assez simple.
Source / Exemple :
//************************************************************
#include <windows.h>
#include <commctrl.h>
#include <string.h>
#include <stdio.h>
#include "resource.h"
LRESULT CALLBACK DlgProc(HWND,UINT,WPARAM,LPARAM);
void InitListView(HWND,char *);
//************************************************************
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
PSTR szCmdLine,
int iCmdShow
)
{
DialogBox(
hInstance,
MAKEINTRESOURCE(IDD_DIALOG),
NULL,
DlgProc
);
return 0;
}
LRESULT CALLBACK DlgProc(
HWND hDlg,
UINT iMsg,
WPARAM wParam,
LPARAM lParam
)
{
static HWND hwndListView;
switch (iMsg)
{
case WM_INITDIALOG:
{
hwndListView = GetDlgItem(hDlg,IDC_LISTVIEW);
// on change les couleurs
ListView_SetBkColor(hwndListView,RGB(255,0,0));
ListView_SetTextBkColor(hwndListView,RGB(255,255,0));
ListView_SetTextColor(hwndListView,RGB(150,0,200));
// on change le style
SetWindowLong(hwndListView,GWL_STYLE,GetWindowLong(hwndListView,GWL_STYLE) | LVS_LIST);
return 0;
}
case WM_COMMAND:
{
switch(wParam)
{
case IDC_BUTTON:
{
FILE *f;
if((f = fopen("noms.txt","rt")) == NULL)
{
MessageBox(hDlg,"Impossible d'ouvrir 'noms.txt' !","Probleme d'initialisation :",MB_ICONERROR);
}
else
{
char buf[256];
ListView_DeleteAllItems(hwndListView);
fgets(buf,255,f);
do
{
InitListView(hwndListView,buf);
fgets(buf,255,f);
}while(!feof(f));
}
return 0;
}
}
break;
}
// -------------------------------------
case WM_SYSCOMMAND:
{
switch(LOWORD(wParam))
{
// si on veut quitter
case SC_CLOSE:
{
EndDialog(hDlg,FALSE);
break;
}
}
break;
}
}
return 0;
}
//************************************************************
// ajoute un item a un ListView
void InitListView(HWND hwnd,char *text)
{
LV_ITEM lvi;
// initialisation des champs de la structure
lvi.mask = LVIF_TEXT | LVIF_PARAM | LVIF_STATE;
lvi.state = 0;
lvi.stateMask = 0;
lvi.cchTextMax = strlen(text);
lvi.pszText = text;
lvi.iImage = 0;
lvi.iItem = 0;
lvi.iSubItem = 0;
ListView_InsertItem(hwnd,&lvi);
}
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.