tu mélanges tout
que vient faire une CDialog des MFC ici ?
Version imprimable
tu mélanges tout
que vient faire une CDialog des MFC ici ?
donc comment pourrais je crée une boite de dialogue et l associer à un evenement ??
imaginons que tu veuilles appeler cette boite de dialogue quand tu cliques sur un bouton de la Form1.
Tu doubles click en design sur le bouton, ca te génére l'evenement du click
tu crées une nouvelle form (ajouter Form), tu l'appelles Form2
en haut de ta form1.h, tu ajoutes
dans ton code d'évenement du bouton tu fais :Code:
1
2 #include "form2.h"
voilaCode:
1
2
3 Form2 ^maform2 = gcnew Form2(); maform2->ShowDialog();
et donc tous les classes des MFC ...ca joublie
dans un premier temps, je pense qu'il vaut mieux
pour récuperer le texte ecrit par l utilisateur dans une zone RichTextBox
est ce qu 'il ya une methode qui fait ca ...gettext()
j ai cherché ds le help j ai pas trouvé
merci
j ai fait comme tu ma di je clik sur ok de la form1 , il doit m afficher la form2
mais il me fait
fatal erreur form2.cpp end of file found before the left brace "{"
c normal kil ya ke
#include "StdAfx.h"
#include "form2.h"
dans mon fichier form2.cpp
???
et pourquoi j ai un fichier form2.cpp
alors que j'ai pas de fichier form1.cpp??? c normal?
je suis completement perdu
j 'ai fait #include "form2"
et malgré ca il reconnait pas myform2 quand je la declare !
en fait voila le pb :
le passage de la form1 à la form2 c ok
par contre de la form 2 à la form 3 .. la ca commence à faire des erreurs
j'ai remarqué que pour la form1, il n y a qu' un fichier .h
par contre pour les autres il y a des fichiers form2.cpp form3.cpp
est ce que c normal ??
exemple d'erreurs:
form2.cpp fin de fichier trouvé avant l accolade gauche {
il me mets aussi comme erreur undeclared form3 alors que j ai ajouté #include "form3.h"
je galère depuis ce matin ..je vois pas ou est le problème ...tt est logique et pourtant je comprends pas les erreurs qu'il me sort !!
tu devrais utiliser l'assistant d'ajout de form
s'il y a un .cpp vide, ce n'est pas grave, mais l'assistant d'ajout de form ne le génère pas, tu devrais l'utiliser
comment accéder à cet assistant??
moi ce que je fais
add ->add new items
et je choisit : forms
et il me genere .cpp qui genere ces erreurs
bouton droit sur le projet
add new item
UI -> windows form
tu as raison, il genère un .cpp
n'y touche pas
par contre, ton erreur n'est pas normal, tu as du rajouter une ligne
oublier un { ou un ; etc ...
vérifie ton code, ou montre le nous
Bizarrement ca compile aujourdhui sans erreurs ..c le meme qu'hier....mais il ya un problem, lorsque je clik sur le button de la form 1 ca marche , par contre lorsque je passe de la form2 à la form3 je clik sur ok ca me fait rien ???
dans la form1, j ai associé l evenement à ce bout de code
*********************************************
private: System::Void encryptToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
Form2 ^mylogin = gcnew Form2();
mylogin->ShowDialog();
}
*********************************************
dans la form2, j ai associé l evenement à ce bout de code
*********************************************
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
Form3 ^mylevel = gcnew Form3();
mylevel->ShowDialog() ;
}
*********************************************
une autre question , je veux avant le clik sur le button de la form2, recuperer ce que l utilisateur a entré dans le textbox de la form2
est ce que je peux faire comme ca
**********************************************
private: System::Void textBox1_TextChanged(System::Object^ sender, System::EventArgs^ e) {
Form2 ^mylogin;
mylogin->Text->Copy(System::String ^str);
}
//et apres lorsque je clik sur ok je veux mettre ce que l utilisateur comme nom d un label de la form3 , donc je peux modifier le code associé au bouton ci dessus
Form3 ^mylevel = gcnew Form3();
mylevel->label2->Name = str;//En ajoutant cette ligne
mylevel->ShowDialog() ;
paradoxalement j'ai copié le projet sur une clé et j'ai recompilé sur un autre poste et ca marche sans erreurs ..
par contre je bloque tjrs sur 2 points :
comment recuperer ce que l utilisateur va rentrer ? donc entre le passage de la form2 à la form 3 lorsque je clik sur ok , je veux recuperer ce que l'utilisateur a rentré puis afficher la form3
et comment je peux utiliser "OpenFileDialog" et "SaveFileDialog" je veux les associer au clik à deux bouttons ?et je blok dessus depuis une semaine ??
tu peux faire une fonction publique de la form3 pour récuperer la saisie
dsl mais je vois pas comment ..est ce que tu peux me donner un exemple??par exemple pour ce textBox1
*****
this->textBox1->Location = System::Drawing::Point(47, 83);
this->textBox1->Name = L"textBox1";
this->textBox1->Size = System::Drawing::Size(170, 20);
this->textBox1->TabIndex = 1;
****
sinon je sais tjrs pas comment associer un clik à un boutton à un OpenFileDialog ???
tiens, voici une démo
un jour, je le mettrais dans la faq :aie:
ok merci beaucoups ..
mais si je veux quand je clique sur un button "open" il me permet de choisir un fichier
c est faisable avec OpenDialogFile mais je sais pas comment l utiliser
est que tu peux me donner un exemple de code ?
merci bien :king:
je t'avais déjà fourni le lien http://nico-pyright.developpez.com/t...#LfolderDialog