PDA

Visualizza la versione completa : [c++] Puntare due funzioni


Kreator
30-12-2004, 09:49
Ciao raga.

Mi spiego meglio ..
Sostanzialmente ho 2 Form (A e B)
A e' il form di base che viene aperto con l'apertura dell'applicazione, il form B deve essere aperto con la pressione di un pulsante.
Nel Form B ci sono 2 parametri interi, e in + mi sono dichiarato 2 puntatori a questi parametri interi, il tutto inizializzato nel costruttore del form B:

int val1;
int val2;

int *ToVal1;
int *ToVal2;

Nel costruttore del form B:

ToVal1 = &val1;
ToVal2 = &val2;

e fin qui ci siamo ... :rollo:

Quello che voglio ottenere: e' che per tutta la durata di vita del form B, se l'utente clicca su un pulsante dentro il form B, il form A deve fare il retrieve di quei due valori.

Come pensate di fare voi ? :dh: :dh:

Allora io ho pensato di procedere in questa maniera: mi sono creato un metodo dentro la classe B chiamato:

void __fastcall ToVal (int *_ToVal1, int *_ToVal2)

e poi dentro la classe A mi sono dichiarato un metodo:

void __fastcall GetVal (int *_ToVal1, int *_ToVal2);

Qui arriva il bello :fagiano: ... dentro il costruttore della classe A sono andato a fare la seguente inizializzazione:

formB->ToVal = GetVal;

Quindi quando l'utente clicca sul pulsante dentro il formB ... l'evento associato alla pressione di quel pulsante lo ho gestito richiamando la funzione:

ToVal (...)

... quindi sostanzialmente secondo me richiamando quella funzione si deve attivare la funzione alla quale punta, ovvero GetVal (...) del form A.

Cmq sia, se questo metodo dovesse funzionare il Borland mi fornisce un errore sulla riga:

formB->ToVal = GetVal;

e mi dice ... Member function must be called or its address taken.

Qualche consiglio ??
Aiutatemi per favore.

:dh: :dh: :dh: :dh:

Kreator
31-12-2004, 09:16
up. :fagiano:

Loading