Désactiver la croix pour fermer la dialog [MFC / C++] - Programmation
Marsh Posté le 06-03-2002 à 14:55:38
Les boîtes de dialogue "système" ou celles qu'on crée avec nos petites mains ?
Marsh Posté le 06-03-2002 à 15:31:11
la griser, je sais pas, je suis pas sur que ça soit possible, mais avec ça :
Code :
|
t'enlèves carrément le bouton.
Marsh Posté le 06-03-2002 à 15:36:37
Ne met pas le style Dialog Frame, met resising ou Thin ou None
Sinon dans ton OnInitDialog tu peux l enlever
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
pSysMenu->RemoveMenu(i, MF_BYPOSITION);
CString strAboutMenu;
strAboutMenu.LoadString(IDS_ABOUTBOX);
if (!strAboutMenu.IsEmpty())
{
pSysMenu->AppendMenu(MF_SEPARATOR);
pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
}
}
Par le RemoveMenu et numero correspondant du Fermer.
Marsh Posté le 06-03-2002 à 15:38:11
Quand on crée la feuille, si elle n'a pas de barre de titre, elle n'a pas (il me semble) de boutons avec croix ou "minimise/agrandit".
Faudrait regarder dans les paramètres du style quand on la crée.
La méthode précédente doit pouvoir servir si on veut inhiber un bouton qu'on peut aussi utiliser (selon le contexte).
Marsh Posté le 06-03-2002 à 14:12:11
Salut,
Je voudrais savoir comment désactiver (griser) la crois pour fermer une boite de dialogue. Merci
ANT