begin process at 2012 05 30 08:28:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Urgent : Récupération d'un événement sur un TreeView


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Urgent : Récupération d'un événement sur un TreeView

mercredi 8 janvier 2003 à 11:36:44 | Urgent : Récupération d'un événement sur un TreeView

vow

Bonjour,

J'ai une fenêtre principale, avec un menu et un toolbar, et une fenêtre secondaire (hwndParent) contenant un treeview.
Je travaille sur Visual C++ 6 mais avec du langage C (ça serait trop facile sinon...).
J'aimerais récupérer l'appel de touches du clavier (WM_KEYDOWN ou WM_KEYUP) mais je n'ai pas encore trouvé comment faire.
Est-ce que quelqu'un pourrait m'aider, svp ?
Merci d'avance.
Salutations.

PS : Voici ma fonction de création de Treeview


HWND CreateTreeView(HWND hwndParent)
{
RECT r;
HWND hwndTV;

// La Common Control DLL est chargée
InitCommonControls();

// Taille de la fenetre parent
GetClientRect(hwndParent, &r);
hwndTV = CreateWindowEx(
0,
WC_TREEVIEW,
"Tree View",
WS_VISIBLE | WS_CHILD | TVS_HASLINES | TVS_HASBUTTONS | TVS_LINESATROOT ,
0, 0, r.right, r.bottom,
hwndParent,
(HMENU) IDW_BASE,
g_hInst,
NULL);

TreeView_SetBkColor(hwndTV, RGB(255, 255, 255));

// Initialisation de la liste des images
if (LoadImageLists(hwndTV) == FALSE)
{
DestroyWindow(hwndTV);
return (NULL);
}

return( hwndTV );
}

~~~~ Vow ~~~~
jeudi 9 janvier 2003 à 15:29:26 | Re : Urgent : Récupération d'un événement sur un TreeView

vow

Voici la solution
Dans la fonction de "création" de la fenêtre :


long CALLBACK PRSMDIChildWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{

// Variable permettant de récuperer les messages sur le Treeview
LPNMHDR lpNotify;

// Variable permettant de récuperer les messages de touches sur le Treeview
LPNMTVKEYDOWN laTouche;

switch(message)
{

case WM_NOTIFY:
lpNotify = (LPNMHDR) lParam;
if (lpNotify == NULL)
break;

// Captures des touches Raccourcis
if (lpNotify->idFrom == IDW_BASE
&& lpNotify->code == TVN_KEYDOWN)
{
laTouche = (LPNMTVKEYDOWN) lParam;
switch (laTouche->wVKey)
{
case VK_F2:
PostMessage(g_hWndMain, WM_COMMAND, IDM_DE_LA_FONCTION_DE_F2, 0L);
break;
case VK_INSERT:
PostMessage(g_hWndMain, WM_COMMAND, IDM_DE_LA_FONCTION_DE_INSER, 0L);
break;
case VK_DELETE:
PostMessage(g_hWndMain, WM_COMMAND, IDM_DE_LA_FONCTION_DE_SUPPR, 0L);
break;
}
}
break;
}
return(0L);
}

~~~~ Vow ~~~~


-------------------------------
Réponse au message :
-------------------------------

> Bonjour,
>
> J'ai une fenêtre principale, avec un menu et un toolbar, et une fenêtre secondaire (hwndParent) contenant un treeview.
> Je travaille sur Visual C++ 6 mais avec du langage C (ça serait trop facile sinon...).
> J'aimerais récupérer l'appel de touches du clavier (WM_KEYDOWN ou WM_KEYUP) mais je n'ai pas encore trouvé comment faire.
> Est-ce que quelqu'un pourrait m'aider, svp ?
> Merci d'avance.
> Salutations.
>
> PS : Voici ma fonction de création de Treeview
>
>

> HWND CreateTreeView(HWND hwndParent)
> {
> RECT r;
> HWND hwndTV;
>
> // La Common Control DLL est chargée
> InitCommonControls();
>
> // Taille de la fenetre parent
> GetClientRect(hwndParent, &r);
> hwndTV = CreateWindowEx(
> 0,
> WC_TREEVIEW,
> "Tree View",
> WS_VISIBLE | WS_CHILD | TVS_HASLINES | TVS_HASBUTTONS | TVS_LINESATROOT ,
> 0, 0, r.right, r.bottom,
> hwndParent,
> (HMENU) IDW_BASE,
> g_hInst,
> NULL);
>
> TreeView_SetBkColor(hwndTV, RGB(255, 255, 255));
>
> // Initialisation de la liste des images
> if (LoadImageLists(hwndTV) == FALSE)
> {
> DestroyWindow(hwndTV);
> return (NULL);
> }
>
> return( hwndTV );
> }
>

> ~~~~ Vow ~~~~


Cette discussion est classée dans : treeview, hwnd, hwndparent, hwndtv, tvs


Répondre à ce message

Sujets en rapport avec ce message

Création et affichage Treeview [ par morgan643 ] Bon je viens de créer une fenêtre simple avec CreateWindowEx(), je voudrais creer un TreeView dans cette fenetre. J'ai récupérer un code déjà existant CreateWindow qui plante [ par mogwai93 ] Bonjourj'ai un createwindow qui plante sans raison :LRESULT CALLBACK DlgProc(HWND hWndParent, UINT Msg, WPARAM wParam, LPARAM lParam){HWND hWnd;... sw treeview edit label [ par lectpe ] Bonjour.Je voudrais pouvoir éditer un label dans un treeview.MON CODE :TV_INSERTSTRUCT tviis;TV_ITEM tvi;...      case WM_NOTIFY:      {         HWND TreeView et Dialog [ par jojomillenium ] Bonjour, Je n'arrive pas a faire 2 choses :( Pourtant j'ai essayé! Google et MSDN n'ont pas été mes amis ce coup ci! (Code ci dessous) Je programme en un probleme de calcul de courbe [ par Cyr62110 ] Voila mon probleme, je creer un programme dessinant des courbes (fonction,point par point).Mais j'ai un probleme, lors ce que je teste et je rentre le SousClassement d'un controle ne marche pas ! [ par yann_lo_san ] Voilà, impossible de sousClasser un controle staticJ'oublie peut etre quelque chose ?Erreurs : CAST WNDPROC ou Nouvelle WndProc zappéeSi vous avez des Timer dans service [ par deck_bsd ] Bonjour à tous,Voila, je me demandai, ds mon service je doit me servir d'un timer. Hors celui-ci ne contient aucune fenêtre et donc aucun hwnd. Donc d [Dev-Cpp]Pb de compilation [ par Cyr62110 ] Voila mon probleme, j'ai fait la source suivante :#include #define _WIN32_IE 0x0500#include #include #define IDB_GO 100#define IDB_UPLOAD 101#define Remplir Treeview et colonnes borland c++ builder 6.0 [ par bougnat83 ] bonjour. Sous borland c++ builder 6.0, j'ai un treeview dans lequel j'ai mis 2 colonnes. Mon problème est que je n'arrive pas à remplir les lignes de Lancement d'un programme via un service [ par laetitiavincent ] Bonjour tout le mondeVoilà mon problème : j'ai fait un petit prog qui, lorsqu'il y a fermeture de session ou de windows, il me lancer une fonction  to


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,591 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales