French Questions grand débutant

Bernard40

Member
Bonjour,
Venant de Delphi, je découvre B4A et je tombe sur quelque chose qui me parait étrange :
J'ai sur ma Form mon Activity plusieurs Edittext.
Ils sont déclarés dans la Sub Globals :
B4X:
    Private LargeurSupport As EditText
    Private HauteurSupport As EditText
    Private VMarges As EditText
E
Ils sont chargés dans la Sub Activity_Create via un Map nommé MapSettings
B4X:
            VMarges.Text=MapSettings.Get("VMarges")
            HauteurSupport.Text=MapSettings.Get("Hauteursupport")
            LargeurSupport.Text=MapSettings.Get("Largeursupport")
Ils sont mémorisés dans la Sub Activity_Resume
B4X:
    MapSettings.Put("HauteurSupport",HauteurSupport.Text)
    MapSettings.Put("LargeurSupport",LargeurSupport.Text)
    MapSettings.Put("VMarges",VMarges.Text)
Comme mon application se plante suite à l'effacement d'un des EditText pour test je m'aperçoit en mode débug qu'un des mes EditText à sa propriété Text = Null !!
Comment cela est-il possible ? Venant de Delphi c'est incompréhensible.
Soit je décide donc de tester cette propriété pour corriger le défaut avant plantage je fais donc :
B4X:
            VMarges.Text=MapSettings.Get("VMarges")
            If (VMarges.Text="") Or  (VMarges.Text=Null) Then VMarges.Text="3"
J'y passe bien mais cela ne fait rien Text reste à Null ???

Quelles sont mes erreurs ?
Merci d'avance
 

klaus

Expert
Licensed User
Longtime User
Je suppose que c'est directement au démarrage du programme que ça plante.
Activity_Create est exécuté avant Activity_Resume donc au démarrage MapSettings est vide !?

Peux-tu poster ton projet pour que nous puissions y jeter un coup d'oeil.
Pour exporter un projet:

1609933528902.png
 

Bernard40

Member
Effectivement c'est dans Activity_Create que j'ai le plantage.
Et c'est en mettant un point d'arrêt que j'ai pu constater que dans le Map j'avais des valeurs à Null alors que normalement elles devraient, à mon sens, être au pire à vide soit "" mais pas à Null.
Je met mon projet en lien pour avoir un avis d'expert, mais depuis hier j'ai changé un peu le rechargement des valeurs pour essayer de ne pas planter, mais je n'ai pas retrouvé dans mes derniers tests ces champs à Null sans avoir changé la partie sauvegarde ???
Si tu vois d'autre défauts n'hésites pas ! J'ai 20 ans de code en Delphi Pascal, mais je re-découvre le basic (loin de celui du ZX81 ou de l'Amstrad) et je découvre aussi le développement pour smartphone.
Merci d'avance.
Bernard
 

Attachments

  • MarieLouiseB4.zip
    91 KB · Views: 157
Top