Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1222 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Insérer Item ListView

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Insérer Item ListView

n°1332448
taron_31
Posté le 26-03-2006 à 14:36:28  profilanswer
 

[][]Bonjour, dans mon programme j'utilise une ListView dont je peux ajouter un item (première colonne). Ce que je souhaite c'est faire de même à partir d'un autre programme, en recherchant de prime abord le HWND de ma fenêtre trop-most, ensuite le HWND de ma SysLitView32, et effectuer l'ajout de l'item par un appel de la fonction ListView_InsertItem, voici le code de mon programme extérieur censé ajouter un item :
 

Code :
  1. #include <windows.h>
  2. #include <stdio.h>
  3. #include <commctrl.h>
  4. //#pragma comment(lib, "commctrl.lib" )
  5. int main()
  6. {
  7.     HWND hParent, hChild;
  8. hParent = FindWindow("RGWndClass", NULL);
  9. if(!hParent)
  10. {
  11.  fprintf(stderr, "Error : couldn't find top most window !\n" );
  12.  return 1;
  13. }
  14.     hChild = FindWindowEx(hParent, NULL, WC_LISTVIEW, NULL);
  15. if(!hChild)
  16. {
  17.  fprintf(stderr, "Error : couldn't find WC_LISTVIEW !\n" );
  18.  return 1;
  19. }
  20.     printf("ListView found !\n" );
  21.      
  22.       LVITEM item;
  23.  
  24.       char *texte = "leTexte";
  25.  
  26.       item.iItem = 0;
  27.  
  28.       item.iSubItem = 0;
  29.  
  30.       item.pszText = texte;
  31.  
  32.       item.cchTextMax = strlen(texte);
  33.  
  34.       item.mask = LVIF_TEXT | LVIF_PARAM;
  35.  
  36.       //SendMessage(hChild, LVM_INSERTITEM, 0, (LONG)&item);
  37.       ListView_InsertItem (hChild, &item);
  38.  
  39.     return 0;
  40. }


 
Lors de sopn exécution, le HWND de ma SysListView32 est correctement récuperé ; j'ai même teste un effacement avec ShowWindow(hChild, SW_HIDE) ; preuve que le HWND est correct. Pourtant, l'ajout d'un item (cf code plus haut) ne fonctionne pas sur ma fenêtre cible ; en effet rien ne s'affiche... mais avec le même code dans mon programme principal, l'item s'affiche bien...
 
Alors pourquoi l'ajout de l'item est correctement effectué dans mon programme principal mais pas à partir de mon programme extérieur alors que j'ai récuperé le bon HWND ? Si vous aviez une idée...
 
Merci

mood
Publicité
Posté le 26-03-2006 à 14:36:28  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Insérer Item ListView

 

Sujets relatifs
Inserer des saut de ligne puis les afficherrecuperer le login pour l'insérer dans MYSQL
JfreeChart : Insérer une image dans un tooltip[VBA-W]Insérer du texte après une recherche
insérer du html dans un mailcreer requete pour inserer des valeurs dans ACCESS
[RESOLU] Créer un fichier à partir de 2 autres + insérer contenu...inserer des sous tableaux dans une base de données ?
inserer un lien dans le phpVC++ -> add existing item to a project => problème?!
Plus de sujets relatifs à : Insérer Item ListView


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR