Aide QT : debuter avec petit code
katanaenmousse
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Elminster -
Elminster -
Bonjour,
Bon, j ai bossé mon C++, les variables, les classes, les fonctions, les fonctions membres, ...
Je voudrais maintenant m'attaquer a QT pour cela je cherche a étudier un code simple avec des slots et signals et aussi avec une EditLine.
Est ce que quelqu'un aurait un petit bout de code qui ferai la tache suivante afin que je l etudie ?
Ouvrir une fenetre (pas un dialog ca j vois)
mettre dans cette fenetre un PushButton et un EditLine.
Quand on apuie sur le bouton ecrire un truc dans le editline.
Cela m aiderai beaucoup, je commence toujours par etudier ce type d exemple pour apprendre un nouveau langage:p
Merci
Bon, j ai bossé mon C++, les variables, les classes, les fonctions, les fonctions membres, ...
Je voudrais maintenant m'attaquer a QT pour cela je cherche a étudier un code simple avec des slots et signals et aussi avec une EditLine.
Est ce que quelqu'un aurait un petit bout de code qui ferai la tache suivante afin que je l etudie ?
Ouvrir une fenetre (pas un dialog ca j vois)
mettre dans cette fenetre un PushButton et un EditLine.
Quand on apuie sur le bouton ecrire un truc dans le editline.
Cela m aiderai beaucoup, je commence toujours par etudier ce type d exemple pour apprendre un nouveau langage:p
Merci
A voir également:
- Aide QT : debuter avec petit code
- Qt sdk - Télécharger - Langages
- Qt web - Télécharger - Navigateurs
- Qt tab bar - Télécharger - Personnalisation
- Qt linux ✓ - Forum Ubuntu
- QT sous windows ✓ - Forum Programmation
1 réponse
bonjour katanaenmousse
je viens de me plonger dans Qt aujourd'hui même et j'ai aussi eu ce probleme
je n'ai pas trouvé dans Qt Designer la possibilité de le faire donc j'ai fait moi même mon petit bout de code:
l'astuce est de declarer une nouvelle classe en tant que sous classe de QPushButton et de "capter" l'evenement du clic souris
pour ma part cela donne quelquechose comme ça:
class BoutonSaisie : public QPushButton{
protected:
QLineEdit* zoneAffichage;//pointeur vers la zone de saisie ou on voudra afficher le texte
public:
BoutonSaisie(QString nom,QWidget* parent,QLineEdit* sortie):QPushButton(nom,parent){
zoneAffichage=sortie;
}
void mousePressEvent(QMouseEvent *event){//on capte le clic de souris
if(zoneAffichage!=NULL)//on sait jamais....
zoneAffichage->setText( "Le Texte que je veux afficher" );
}
};
et au niveau du main:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget* Form=new QWidget();
Form->resize(250, 150);
QLineEdit* saisie=new QLineEdit("zone de saisie",Form);
saisie->setGeometry(QRect(10, 10, 150, 20));
BoutonSaisie* monBouton=new BoutonSaisie("cliquez ici",Form,saisie);
monBouton->setGeometry(QRect(10, 40, 60, 30));
Form->show();
return app.exec();
}
apres on peut aussi faire ça en allant recuperer le texte dans un autre zone de saisie,etc....
je viens de me plonger dans Qt aujourd'hui même et j'ai aussi eu ce probleme
je n'ai pas trouvé dans Qt Designer la possibilité de le faire donc j'ai fait moi même mon petit bout de code:
l'astuce est de declarer une nouvelle classe en tant que sous classe de QPushButton et de "capter" l'evenement du clic souris
pour ma part cela donne quelquechose comme ça:
class BoutonSaisie : public QPushButton{
protected:
QLineEdit* zoneAffichage;//pointeur vers la zone de saisie ou on voudra afficher le texte
public:
BoutonSaisie(QString nom,QWidget* parent,QLineEdit* sortie):QPushButton(nom,parent){
zoneAffichage=sortie;
}
void mousePressEvent(QMouseEvent *event){//on capte le clic de souris
if(zoneAffichage!=NULL)//on sait jamais....
zoneAffichage->setText( "Le Texte que je veux afficher" );
}
};
et au niveau du main:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget* Form=new QWidget();
Form->resize(250, 150);
QLineEdit* saisie=new QLineEdit("zone de saisie",Form);
saisie->setGeometry(QRect(10, 10, 150, 20));
BoutonSaisie* monBouton=new BoutonSaisie("cliquez ici",Form,saisie);
monBouton->setGeometry(QRect(10, 40, 60, 30));
Form->show();
return app.exec();
}
apres on peut aussi faire ça en allant recuperer le texte dans un autre zone de saisie,etc....