Variabler i Borland Builder 5.0
HejJeg forsøger at bruge variablen MedarbejderID i flere forme. For at gøre dette erklærer jeg variablen globalt i min velkomst-menu, Sådan (i public):
start.h
-------
//---------------------------------------------------------------------------
#ifndef startH
#define startH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <jpeg.hpp>
#include <Menus.hpp>
#include <Buttons.hpp>
#include "Modelkomp.h"
//---------------------------------------------------------------------------
class TVelkomst : public TForm
{
__published: // IDE-managed Components
TImage *Logo;
TLabel *Label1;
TMainMenu *MainMenu;
TMenuItem *afslut;
TMenuItem *Kunde1;
TMenuItem *OpretKunde1;
TMenuItem *Sletkunde1;
TMenuItem *FindKunde1;
TMenuItem *Medarbejder1;
TMenuItem *logaf;
TMenuItem *Hjlp1;
TMenuItem *Om1;
TMenuItem *OpretMedarbejder1;
TMenuItem *SletMedarbejder1;
TMenuItem *N1;
TMenuItem *Om2;
TMenuItem *SletMedarbejder2;
TComboBox *nummer;
TEdit *Adgangskode;
TBevel *Bevel1;
TLabel *Label2;
TLabel *Label3;
TLabel *Label4;
TBitBtn *BitBtn1;
TLabel *Navn;
TLabel *Label5;
TMenuItem *N2;
TMenuItem *Afslut1;
TMenuItem *N3;
TMenuItem *Opretkartotekskor1;
void __fastcall OpretMedarbejder1Click(TObject *Sender);
void __fastcall FormActivate(TObject *Sender);
void __fastcall FormDestroy(TObject *Sender);
void __fastcall nummerChange(TObject *Sender);
void __fastcall BitBtn1Click(TObject *Sender);
void __fastcall logafClick(TObject *Sender);
void __fastcall OpretKunde1Click(TObject *Sender);
private: // User declarations
MMedarbejder* Pmedarbejder;
public: // User declarations
string MedarbejderID;
__fastcall TVelkomst(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TVelkomst *Velkomst;
//---------------------------------------------------------------------------
#endif
Ved at inkludere min velkomstmenu (start.h) i Opretmedarbejder-formen, burde jeg kunne hente MedarbejderID.
start.cpp
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "start.h"
#include "Modelkomp.h"
#include "KundeOpret.h"
#include "DataModul.h"
void __fastcall TOpretKunde::FormCreate(TObject *Sender)
{
Edit1->Text=Velkomst->MedarbejderID.c_str();
}
//---------------------------------------------------------------------------
.
..
.
..
..
.
..
.
Kompileren brokker sig overhovedet ikke. Men der kommer intet ud på edit-feltet!
Ved at debugge, kan jeg se at variablen "forsvinder" når jeg skifter til den nye form, men den burde da kunne hentes med Velkomst->MedarbejderID.c_str()?????
Hvad gør jeg galt? Fatter det ikke.