Jeanne:
CITATION
Salut et merci pour ta réponse
j'ai fait la manoeuvre et pourtant en compilant il me met :
frmMain.hbf (1) : error #2019 : parse error before 'form' : statement expected
(Dans le MainForm)
form load()
Champs53=cLng(Champs21)+cLng(Champs42)
field1.Text=Champs53
end sub
Private Sub Button1_Click()
dim f as new Form1
f.Show hbFormGoto+hbFormModeless
End Sub
Form1.hbf (1) : error #2019 : parse error before 'Champs21' : statement expected
(Dans Form1)
Champs21=field1.text
Private Sub Button1_Click()
dim f as new Form2
f.Show hbFormGoto+hbFormModeless
End Sub
Form2.hbf (1) : error #2019 : parse error before 'Champs42' : statement expected
(Dans Form2)
Champs42=field1.text
Private Sub Button1_Click()
dim f as new frmMain
f.Show hbFormGoto+hbFormModeless
End Sub
(Dans le module)
Public Champs53 as String
Public Champs21 as String
Public Champs42 as String
Je répond ici (et pas en MP) pour que tous en profite.
La syntaxe que j'ai utilisé n'est pas celle que le programme comprend, c'est juste l'idée.
le "
form load" s'écrit "
Private Sub Form_Load()"
d'ailleurs il n'est pas non plus utile de l'écrire soit meme , un click droit sur la form (là où il n'y a pas d'objet) suffit ou encore la liste déroullante au dessus du code, a gauche tu choisi l'objet à droit sa methode.
HB++ comme VB sur PC, c'est de la programmation événementielle, donc tu ne peux pas écrire dans un source (form 2)
Champs42=field1.text tout seul,
cela doit etre dans une procédure par exemple dans ta form je vois que tu as un bouton Button1 pour la fermer, et bien utilise la méthode click() sur le bouton qui ferme avant de quitter l'écran,
ou encore dans ton champ de saisie field1, utilise la méthode change()
exemple:
form 2
soit un bouton Button1 et le champs de saisie field1:
private sub Button1_Click()
Champs42=field1.text dim f as new frmMain
f.Show hbFormGoto+hbFormModeless
end sub
ou encore
private sub field1_change()
Champs42=field1.textend sub
enfin concernant l'ordre, tu indiques que le mainform est celle ou le calcul se fait dans le load, mais c'est un non sens car les valeurs ne sont pas encore connues quand le programme se lance.
tu dois soit déplacer le code du calcul sur un bouton_click, soit permetuter l'ordre d'apparition des forms: d'abord la saisie des 2 valeurs puis le calcul.