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

Discussion :

Barre de menu dans la fenêtre principale

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 25
    Par défaut Barre de menu dans la fenêtre principale
    Bonjour !

    Je rencontre un petit soucis, je cherche a créer une barre de menu dans ma fenetre principale mais ça ne fonctionne pas. Voici le code ( ci dessous ), est ce que l'un d'entre vous aurait une idée ?

    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    #include <QApplication>
    #include <QMainWindow>
    #include <QPushButton>
    #include <QLCDNumber>
    #include <QSlider>
    #include <QMenuBar>
     
    void init(QMainWindow *w)
     
    {
     
     
     
        w->setFixedSize(1000, 500);
     
    QMenuBar *qm1 = new QMenuBar(w);
        //QMenu *qma = menubar(w)->addMenu("&Fichier");
       //  QMenu *qma = new QMenu(w);
       // qma->addMenu("&Fichier");
        // QMenu *menuFichier = menuBar()->addMenu("&Fichier");
       //  QMenu *menuEdition = menuBar()->addMenu("&Edition");
       //  QMenu *menuAffichage = menuBar()->addMenu("&Affichage");
        // qma->addMenu("&Test");
     
    qm1->MenuItem("Test");
     
      QPushButton *bt1 = new QPushButton( "Nouvelle Partie", w );
      bt1->setFixedSize(300, 50);
      bt1->move(0,0);
      bt1->setFont(QFont("Comic Sans MS", 14));
      QObject::connect(bt1, &QPushButton::clicked, &QApplication::quit);
      QObject::connect(bt1, &QPushButton::pressed, [=](){ bt1->setText("Au revoir !"); } );
     
      QPushButton *bt2 = new QPushButton( "Charger une partie", w );
      bt2->setFixedSize(300, 50);
      bt2->move(0,50);
      bt2->setFont(QFont("Comic Sans MS", 14));
      QObject::connect(bt2, &QPushButton::clicked, &QApplication::quit);
      QObject::connect(bt2, &QPushButton::pressed, [=](){ bt2->setText("Au revoir !"); } );
     
      QPushButton *bt3 = new QPushButton( "Générer un monde", w );
      bt3->setFixedSize(300, 50);
      bt3->move(0,100);
      bt3->setFont(QFont("Comic Sans MS", 14));
      QObject::connect(bt3, &QPushButton::clicked, &QApplication::quit);
      QObject::connect(bt3, &QPushButton::pressed, [=](){ bt3->setText("Au revoir !"); } );
     
      QPushButton *bt4 = new QPushButton( "Quitter", w );
      bt4->setFixedSize(300, 50);
      bt4->move(0,150);
      bt4->setFont(QFont("Comic Sans MS", 14));
      QObject::connect(bt4, &QPushButton::clicked, &QApplication::quit);
      QObject::connect(bt4, &QPushButton::pressed, [=](){ bt4->setText("Au revoir !"); } );
     
     
    QLCDNumber *m_lcd = new QLCDNumber(w);
    m_lcd->setSegmentStyle(QLCDNumber::Flat);
    m_lcd->move(800, 20);
    m_lcd->setDigitCount(3);
     
     
      QSlider *m_slider = new QSlider(Qt::Horizontal, w);
      m_slider->setGeometry(10, 60, 150, 20);
      m_slider->move(500,350);
     
      QObject::connect(m_slider, SIGNAL(valueChanged(int)), m_lcd, SLOT(display(int))) ;
     
      w->show();
      // bt->resize(w->size());
     
     
     
    }
    int main(int argc, char *argv[])
    {
      QApplication a(argc, argv);
     
      QMainWindow w;
      init(&w);
     
      return a.exec();
    }

  2. #2
    Membre émérite
    Avatar de Daïmanu
    Homme Profil pro
    Développeur touche à tout
    Inscrit en
    Janvier 2011
    Messages
    742
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur touche à tout

    Informations forums :
    Inscription : Janvier 2011
    Messages : 742
    Par défaut
    Bonjour.

    Pour ajouter ton QMenuBar à ta fenêtre, tu dois utiliser la méthode setMenuBar() de QMainWindow.

    Petite remarque : Tu places tous tes widgets à la main, tu devrais envisager d'utiliser le système de layouts qui peut te faciliter la tache.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 25
    Par défaut
    Bonjour Manudiclemente,

    Un grand merci je teste ça desuite ! Je vais m’intéresser aux layouts dès maintenant.

Discussions similaires

  1. Comment afficher des JPanels dans ma fenêtre principale JFrame en fonction du menu choisi?
    Par methodman225 dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 22/08/2010, 01h40
  2. Réponses: 0
    Dernier message: 10/01/2009, 20h40
  3. [C] Scrollbar dans la fenêtre principale
    Par kynri dans le forum Windows
    Réponses: 1
    Dernier message: 21/10/2007, 23h09
  4. [debutant] Barre de menu dans un formulaire
    Par benjiprog dans le forum IHM
    Réponses: 2
    Dernier message: 16/07/2007, 13h02
  5. pas de barre de menu dans IDE Delphi5
    Par zonda dans le forum Delphi
    Réponses: 2
    Dernier message: 11/11/2006, 18h22

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