Modifier dynamiquement la String Table
Bonjour,
J'aimerais savoir si on peut modifier dynamiquement la String Table.
En effet, j'ai des boutons de barre d'outils qui changent d'aspect (et de fonctionnalité) et j'aimerais pouvoir modifier aussi le message qui leur est associé dans la barre d'état ainsi que l'info bulle.
Merci d'avance pour tout renseignement.
Personnaliser le message de la barre d’état
Je pense qu'on ne peut pas modifier la string table puisque c'est une ressource compilée.
Par contre tu peux insérer tous tes différents messages lors du design et personnaliser la récupération des messages des la barre d'état.
Il suffit de surcharger la fonction virtuelle :
Virtual Void GetMessageString(UINT nID, CString& rMessage) const;
de la classe de fenêtre CFrameWnd dans ta classe CMainFrame
par exemple
void CMainFrame::GetMessageString(UINT nID, CString& rMessage) const
{
if (GetCustomMessageString(nID, rMessage))
return; // retourne votre message personnalisé.
CFrameWnd::GetMessageString(nID, rMessage);
}
Voir MSDN pour plus de détails ou bien l’exemple DynaMenu dans MSDN.