[Erreur fatale] La valeur ne peut pas être null. Nom du paramètre*: key
Bien le bonjour a vous ! Voila j'ai écrit un code qui marchait et aujourd'hui en le rouvrant j'ai voulu le compiler histoire de me rappeler où j'en était et je suis tombé sur cette erreur... impossible de trouver la source et le pas-à-pas ne fonctionne pas ! Même sans debugger... Des fois que, voilà le code :
le .h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
| //---------------------------------------------------------------------------
#ifndef SlorbH
#define SlorbH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
//-------------------Création de la structure Materiel-----------------------
typedef struct
{
char NomEquipement[20];
int NumSerie;
int jour,mois,annee;
char Commentaire[255];
}MATERIEL;
class TPlan : public TForm
{
__published: // Composants gérés par l'EDI
TLabel *Label1;
TLabel *Label2;
TLabel *Label3;
TLabel *Label4;
TEdit *EditNom;
TEdit *EditNum;
TEdit *EditDateJ;
TEdit *EditDateM;
TEdit *EditDateA;
TMemo *Memo;
TEdit *EditCom;
TButton *ButtonEnr;
void __fastcall ButtonEnrClick(TObject *Sender);
private: // Déclarations utilisateur
public: // Déclarations utilisateur
MATERIEL Materiel; //declaration de la variable de type MATERIEL
__fastcall TPlan(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TPlan *Plan;
//---------------------------------------------------------------------------
#endif |
Le .cpp :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| //---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Slorb.h"
#include <stdio.h> //Bilbliothèque pour "sprintf"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TPlan *Plan;
//---------------------------------------------------------------------------
__fastcall TPlan::TPlan(TComponent* Owner)
: TForm(Owner)
{
}
//--------------------------Enregistrer les données dans la memo-------------
void __fastcall TPlan::ButtonEnrClick(TObject *Sender)
{
//variable locale
char TexteMemo[255]="";
//Acquisition des valeur entrés dans les edit
strcpy(Materiel.NomEquipement,EditNom->Text.t_str());
Materiel.NumSerie=EditNum->Text.ToInt();
Materiel.jour=EditDateJ->Text.ToInt();
Materiel.mois=EditDateM->Text.ToInt();
Materiel.annee=EditDateA->Text.ToInt();
strcpy(Materiel.Commentaire,EditCom->Text.t_str());
//Assemblage de la chaine de caractrere :
sprintf(TexteMemo,"Maintenance de : %s N°%d, révisé le %d/%d/%d",
Materiel.NomEquipement,Materiel.NumSerie,Materiel.jour,Materiel.mois,Materiel.annee);
//Ecriture dans la memo
Memo->Lines->Add(TexteMemo);
Memo->Lines->Add(Materiel.Commentaire);
}
//--------------------------------------------------------------------------- |
Pour le moment je ne peux pas continuer a cause de cette erreur... Une idée ? Merci d'avance pour vos réponses !