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

Qt Discussion :

le *parent pour un QWidget, il veut pas !


Sujet :

Qt

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 21
    Par défaut le *parent pour un QWidget, il veut pas !
    bonjour

    j'ai
    main.cpp

    MaFenetre.h
    MaFenetre.cpp

    FenOption.h
    FenOptions.cpp

    je veux 1)

    mon prog fonctionne sauf que je veux faire comme ce que j'ai fais avec ma QMessageBox::information(this, dans mafenetre.cpp, mon messagebox est centré lors de son appell par rapport a mafenetre

    je veux faire sa pour la fenetreoption, mais meme en mettant 'fenetre' dans le constructeur jai une erreur et je peux pas mettre this car sinon je lui donne lui meme en pointeur à ma fenetre option

    j'aimerai aussi :
    pouvoir définir au lancement du programme donc du .exe ou la fenetre va apparaitre à l'écran, centrer ou pas etc... comment ?

    Merci de votre aide, bonne soirée


    mafen.cpp:
    //On appelle la fenêtre d'options
    void FenPrincipale::options()
    {
    FenOptions *laFene = new FenOptions();
    }


    fenopption.h
    class FenOptions : public QWidget
    {
    Q_OBJECT

    public:
    FenOptions();

    fenoption.cpp :

    #include "FenOptions.h"


    FenOptions::FenOptions() : QWidget()
    {
    //Truc d'infos de la fenêtre
    setWindowTitle("Options


    jai mis que les bout de code concerné

  2. #2
    Membre Expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Par défaut
    Salut,

    Il faut, à partir de FenPrincipale, la positionner comme tu veux à l'aide de move. Tu obtiendras les infos nécessaires au calcul du milieu par la fonction size() de FenPrincipale.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 21
    Par défaut
    ok merci pour ça

    ps : Quelqu'un qui gère les pointeurs/accesseur entre plusieurs classe peut t-il venir m'aider sur msn ?

    [edit mongaulois]
    merci de ne pas mettre ton email ici.
    Dangereux pour toi

  4. #4
    Membre Expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Par défaut
    Tu ne devrais pas mettre ton adresse en clair, les spambots vont adorer ça :/

    Et le forum est là pour répondre à la 2nde partie (éventuellement le forum C++ si c'est une question non liée à Qt). Il y a deschances que tu y obtiennes plus rapidement des réponses

  5. #5
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2006
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Mai 2006
    Messages : 507
    Par défaut
    Citation Envoyé par IrmatDen Voir le message
    Salut,

    Il faut, à partir de FenPrincipale, la positionner comme tu veux à l'aide de move. Tu obtiendras les infos nécessaires au calcul du milieu par la fonction size() de FenPrincipale.
    C'est ce que fait le paramètre "parent" s'il est non nul...

    Il faut donc sans doute le passer à la fonction FenPrincipale::options() qui crée la fenêtre ...

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 21
    Par défaut
    //On appelle la fenêtre d'options
    void FenPrincipale::options()
    {
    FenOptions *laFeneOption = new FenOptions;
    laFeneOption->show();
    }



    voila comment je l'appelle du FenetrePrincipal.cpp

    la voila dans fenOption.h :


    class FenOptions : public QDialog
    {
    Q_OBJECT

    public:
    FenOptions();

    je sais que c'est pas bon mais je ne sais pas comment faire
    je la fais hériter de QDialog pr qu'elle soit centrer, or si je reussi a la faire heriter de fenPrincipal, le QDialog pourra alors etre QWidget suffira

  7. #7
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 774
    Par défaut
    Salut,

    Déjà, petite remarque, mets ton code entre la balise approprié. Pour cela, appuie sur le # qui se trouve dans la barre d'outils lors de la rédaction du message. Merci. Si tu peux en plus éditer les posts précédents pour le faire, ça serait parfait.

    Sinon, pour ton problème, dans ta fonction option() qui crée ta fenêtre, après le show tu ajoutes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    laFeneOption->move(x,y);
    Où x et y sont les coordonnées du coin supérieur gauche de ta fenetre options. Comme te le disait IrmatDen, le x et le y risque de ressembler à un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    x=this->size()/2 - ???
    ...
    Il faut un peu que tu cherches quand même !

    Bonne chance,

    G.

  8. #8
    Membre Expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Par défaut
    Citation Envoyé par Fabllot Voir le message
    C'est ce que fait le paramètre "parent" s'il est non nul...

    Il faut donc sans doute le passer à la fonction FenPrincipale::options() qui crée la fenêtre ...
    On est d'accord, mais il n'en met pas ici, ni ne laisse la possibilité d'en mettre (à part un appel setParent() plus tard). Je pars du principe, très certainement à tort , que les gens se renseignent un peu par eux-même...

Discussions similaires

  1. Réponses: 4
    Dernier message: 19/01/2010, 21h51
  2. [MooTools] fancyupload ne veut pas ouvrir la fenêtre pour choisir les fichiers
    Par xillibit dans le forum Bibliothèques & Frameworks
    Réponses: 0
    Dernier message: 19/01/2010, 14h34
  3. Réponses: 3
    Dernier message: 03/06/2008, 17h49
  4. [Kylix] Un programme compilé ne veut pas se lancer
    Par LightBeam dans le forum EDI
    Réponses: 1
    Dernier message: 05/08/2003, 10h15

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