IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] Supprimer la barre de menu


Sujet :

MFC

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 92
    Points : 55
    Points
    55
    Par défaut [MFC] Supprimer la barre de menu
    Bonjour,

    Je voudrais enlever la barre de menu de mon application de type SDI.

    Merci,

  2. #2
    Membre émérite
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Points : 2 747
    Points
    2 747
    Par défaut
    bah tu vires la création
    il y a du linge sur la corde à linge

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    Ok, tres bonne idée mais elle est ou cette création du menu dans une appli SDI?

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    Salut,
    Tu ne peux pas directement.

    Mais tu peux faire ça :
    Duplique la resource menu IDR_MAINFRAME par click copier click droit coller
    Tu obtiens IDR_MAINFRAME1 .
    Supprime dedans tout les menus sauf un le « ? » par exemple.
    Dans la fonction InitInstance de la classe d’application remplace IDR_MAINFRAME par IDR_MAINFRAME1

    Dans la fonction OnCreate de la CMainframe rajoute a la fin :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    GetMenu()->RemoveMenu(0,MF_BYPOSITION);

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    Ok, il y a un petit probleme d'affchage au début, il faut envoyer un RecalcLayout();

    Mais il n'y aurait pas une solution un peu moins "bidouille"?

  6. #6
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    tu as mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     GetParentFrame()->RecalcLayout();
        ResizeParentToFit();
    dans la fonction OnInitialUpdate de ta view ?

  7. #7
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    si tu places le remove comme çe qui suit ,je ne vois de pb d'affichage :
    le remove est fait juste apres le OnCreate.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
    	if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
    		return -1;
     
    	GetMenu()->RemoveMenu(0,MF_BYPOSITION);
     
    	if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
    		| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
    		!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
    	{
    		TRACE0("Failed to create toolbar\n");
    		return -1;      // fail to create
    	}
     
    	if (!m_wndStatusBar.Create(this) ||
    		!m_wndStatusBar.SetIndicators(indicators,
    		  sizeof(indicators)/sizeof(UINT)))
    	{
    		TRACE0("Failed to create status bar\n");
    		return -1;      // fail to create
    	}
     
    	// TODO: Delete these three lines if you don't want the toolbar to
    	//  be dockable
    	m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
    	EnableDocking(CBRS_ALIGN_ANY);
    	DockControlBar(&m_wndToolBar);
     
    	return 0;
    }

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Février 2003
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 92
    Points : 55
    Points
    55
    Par défaut
    Tu devrais essayer et tu verras qu'il y a un pb d'affichage!!

  9. #9
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Points : 17 323
    Points
    17 323
    Par défaut
    et bien j'ai essayé et j'ai pas de pb !
    si c'est possible montre a quoi ça ressemble ton pb d'affichage.

Discussions similaires

  1. Supprimer la barre de menu principale sous cream sandwich
    Par AxxelBCN dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 29/09/2013, 18h47
  2. [VBA-E] Supprimer menu de la barre de menu
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 30/06/2006, 13h09
  3. [MFC] activer une commande d'une barre de menu
    Par kabil.cpp dans le forum MFC
    Réponses: 4
    Dernier message: 05/05/2006, 10h25
  4. [VBA-E]supprimer les barres de menu Excel
    Par delamarque dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/03/2006, 10h02
  5. Supprimer la barre de menu contextuel dans un état
    Par soso78 dans le forum Access
    Réponses: 2
    Dernier message: 07/10/2005, 00h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo