Bonjour,
J'utilise actuellement un wxGrid tout simple. Lorsque celui ci est affiché, il y a une case (je présume la courante) qui est encadrée en noir.
Je présume que c'est la case courante (cursor) qui reçoit les modifications de valeur.
J'ai surchargé les fonctions suivantes :
OnGridCmdSelectCell et OnGridCellChange.
Hors à présent, lorsque je clique sur case et que j'entre dans mon fonction, j'utilise les instructions suivantes :
J'ai bien ma ligné cliquée en fond bleu, mais le cursor lui ne change pas, et du coup, je ne peux saisir correctement saisir mes données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 m_gridMsg->SelectRow(event.GetRow()); m_gridMsg->SetGridCursor(event.GetRow(), 0);
Savez vous d'où pourrez provenir le problème ?
De même, j'avais remarqué qu'avant en appuyant sur la touche "enter", on passer à la case suivante à saisir, mais là rien ne se passe...
Voici l'initialisation de mon grid :
C'est le générateur wxFormBuilder qui me permet de générer mon ihm.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 m_gridMsg = new wxGrid( m_panel3, wxID_GRID_MSG_NODE, wxDefaultPosition, wxDefaultSize, 0 ); m_gridMsg->CreateGrid( 1, 2 ); bSizer8->Add( m_gridMsg, 1, wxALL|wxEXPAND, 5 );
J'ai le sentiment que la fonction OnGridCmdSelectCell est toujours appelée et jamais OnGridCellChange Du coup !
Partager