Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y= f(x) f
étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de stop
ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
fallait définir la fonction dans un module publique mais après je
comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris correspond à
ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y= f(x) f
étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de stop
ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
fallait définir la fonction dans un module publique mais après je
comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris correspond à
ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y= f(x) f
étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de stop
ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
fallait définir la fonction dans un module publique mais après je
comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris correspond à
ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bonjour,
Si tu définis tes fonctions dans un objet public, tu pourra y faire
appel à l'aide de la fonction CallByName.
Vincent Guichard
Public Function F(X As Single) As Single
F = -X
End Function
Public Sub DrawFunction(Func As String, St As Single, Sp As Single)
Dim i As Single, r As Single
CurrentX = St
CurrentY = CallByName(Form1, Func, VbMethod, St)
For i = St + 1 To Sp Step 1
r = CallByName(Form1, Func, VbMethod, i)
'Faire Quelque chose avec i et r
Next i
End Sub
Private Sub Form_Load()
DrawFunction "F", 0, 10
End Sub
Bonjour,
Si tu définis tes fonctions dans un objet public, tu pourra y faire
appel à l'aide de la fonction CallByName.
Vincent Guichard
Public Function F(X As Single) As Single
F = -X
End Function
Public Sub DrawFunction(Func As String, St As Single, Sp As Single)
Dim i As Single, r As Single
CurrentX = St
CurrentY = CallByName(Form1, Func, VbMethod, St)
For i = St + 1 To Sp Step 1
r = CallByName(Form1, Func, VbMethod, i)
'Faire Quelque chose avec i et r
Next i
End Sub
Private Sub Form_Load()
DrawFunction "F", 0, 10
End Sub
Bonjour,
Si tu définis tes fonctions dans un objet public, tu pourra y faire
appel à l'aide de la fonction CallByName.
Vincent Guichard
Public Function F(X As Single) As Single
F = -X
End Function
Public Sub DrawFunction(Func As String, St As Single, Sp As Single)
Dim i As Single, r As Single
CurrentX = St
CurrentY = CallByName(Form1, Func, VbMethod, St)
For i = St + 1 To Sp Step 1
r = CallByName(Form1, Func, VbMethod, i)
'Faire Quelque chose avec i et r
Next i
End Sub
Private Sub Form_Load()
DrawFunction "F", 0, 10
End Sub
Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y > f(x) f étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de
stop ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
fallait définir la fonction dans un module publique mais après je
comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris correspond
à ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y > f(x) f étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de
stop ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
fallait définir la fonction dans un module publique mais après je
comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris correspond
à ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y > f(x) f étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de
stop ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
fallait définir la fonction dans un module publique mais après je
comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris correspond
à ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Salut,
Sinon si ton objectif est de faire un traceur de fonction qui sont
par l'utilisateur, tu pourras utiliser le moteur de script (ms script
control) pour évaluer ta fonction.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
christophe-pasde<> @wanadoo.fr>" < wrote:
> Bonjour,
>
> J'ai écrit une classe permettant d'afficher un point P(x,y) où Y > > f(x) f étant une fonction quelconque.
>
> Pour l'instant ça s'utilise comme suit:
> 'ici f(x) = tan(x)'
> dans un module de feuille ou publique:
> mdc étant mon objet définit dans un module de classe:
>
> 'valeur de l'incrément réel (double)
> dx = mdc.DefiniPasReal
> 'Valeur d'arrêt
> Count& = mdc.DefiniCompteur
> 'Xo valeur départ
> X = mdc.Espacereelleft
>
> For i& = 0 To Count&
> Y = Tan(X)
> mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
> X = X + dx
> Next i&
>
> Je voudrais encapsulé ceci encore plus et écrire tout simplement:
>
> mdc.dessinefonction( adresse ou nom de la fonction)
> Quel que soit la fonction.(pour définir les valeur de départ et de
> stop ainsi que l'incrément pas de soucis)
>
> Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
> fallait définir la fonction dans un module publique mais après je
> comprend pas bien.
>
> Si quelqu'un a des lumières sur le sujet, merci de les partager.
> De même des infos sur le callback qui si j'ai bien compris correspond
> à ce genre de problématique.
> J'avoue que j'ai du mal a comprendre le mécanisme.
>
> Christophe
>
>
>
> Christophe
Salut,
Sinon si ton objectif est de faire un traceur de fonction qui sont
par l'utilisateur, tu pourras utiliser le moteur de script (ms script
control) pour évaluer ta fonction.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
christophe-pasde<> @wanadoo.fr>" < wrote:
> Bonjour,
>
> J'ai écrit une classe permettant d'afficher un point P(x,y) où Y > > f(x) f étant une fonction quelconque.
>
> Pour l'instant ça s'utilise comme suit:
> 'ici f(x) = tan(x)'
> dans un module de feuille ou publique:
> mdc étant mon objet définit dans un module de classe:
>
> 'valeur de l'incrément réel (double)
> dx = mdc.DefiniPasReal
> 'Valeur d'arrêt
> Count& = mdc.DefiniCompteur
> 'Xo valeur départ
> X = mdc.Espacereelleft
>
> For i& = 0 To Count&
> Y = Tan(X)
> mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
> X = X + dx
> Next i&
>
> Je voudrais encapsulé ceci encore plus et écrire tout simplement:
>
> mdc.dessinefonction( adresse ou nom de la fonction)
> Quel que soit la fonction.(pour définir les valeur de départ et de
> stop ainsi que l'incrément pas de soucis)
>
> Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
> fallait définir la fonction dans un module publique mais après je
> comprend pas bien.
>
> Si quelqu'un a des lumières sur le sujet, merci de les partager.
> De même des infos sur le callback qui si j'ai bien compris correspond
> à ce genre de problématique.
> J'avoue que j'ai du mal a comprendre le mécanisme.
>
> Christophe
>
>
>
> Christophe
Salut,
Sinon si ton objectif est de faire un traceur de fonction qui sont
par l'utilisateur, tu pourras utiliser le moteur de script (ms script
control) pour évaluer ta fonction.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
christophe-pasde<> @wanadoo.fr>" < wrote:
> Bonjour,
>
> J'ai écrit une classe permettant d'afficher un point P(x,y) où Y > > f(x) f étant une fonction quelconque.
>
> Pour l'instant ça s'utilise comme suit:
> 'ici f(x) = tan(x)'
> dans un module de feuille ou publique:
> mdc étant mon objet définit dans un module de classe:
>
> 'valeur de l'incrément réel (double)
> dx = mdc.DefiniPasReal
> 'Valeur d'arrêt
> Count& = mdc.DefiniCompteur
> 'Xo valeur départ
> X = mdc.Espacereelleft
>
> For i& = 0 To Count&
> Y = Tan(X)
> mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
> X = X + dx
> Next i&
>
> Je voudrais encapsulé ceci encore plus et écrire tout simplement:
>
> mdc.dessinefonction( adresse ou nom de la fonction)
> Quel que soit la fonction.(pour définir les valeur de départ et de
> stop ainsi que l'incrément pas de soucis)
>
> Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu qu'il
> fallait définir la fonction dans un module publique mais après je
> comprend pas bien.
>
> Si quelqu'un a des lumières sur le sujet, merci de les partager.
> De même des infos sur le callback qui si j'ai bien compris correspond
> à ce genre de problématique.
> J'avoue que j'ai du mal a comprendre le mécanisme.
>
> Christophe
>
>
>
> Christophe
RE,
> Mais je n'ai pas encore compris exactement ce à quoi
> ressort cet obscur <objet> en notre occurrence...
Sic MSDN CallByName:
<<Exécute une méthode d'un objet, ou définit ou renvoie une propriété
d'un objet.<<
Soit l'utilisateur définit une classe Fonction
dans la quelle il met toutes les méthodes publiques qu'il veut,
décrivant Y=f(x)
Pour l'utilisateur de mdc:
L'appel doit se faire comme suit
call mdc.dessinefonction( object,nomfonction)
Ensuite de manière interne a l'objet mdc on fixe la valeur de X et on
boucle avec un YÊllbyname(object, nomfonction,vbMethod, X)
Object prenant la valeur de FormN ou ClasseMachin.
Je suis d'accord avec toi pour l'aspect Typage unique de la donnée,
contrairement à C++, mais compte tenu de l'objectif du modele objet qui
est de fournir une interface entre les espaces métriques continu 2D et
les espaces discrets périphérique et logique, la valeur supposée de X,Y
est par définition Double.
Si respect de cette condition :
Methode d'un objet publique acceptant en paramètre obligatoire X as
double et renvoyant une valeur Y AS Double
Alors
l'objet mdc est capable de s'interfacer
Christophe
RE,
> Mais je n'ai pas encore compris exactement ce à quoi
> ressort cet obscur <objet> en notre occurrence...
Sic MSDN CallByName:
<<Exécute une méthode d'un objet, ou définit ou renvoie une propriété
d'un objet.<<
Soit l'utilisateur définit une classe Fonction
dans la quelle il met toutes les méthodes publiques qu'il veut,
décrivant Y=f(x)
Pour l'utilisateur de mdc:
L'appel doit se faire comme suit
call mdc.dessinefonction( object,nomfonction)
Ensuite de manière interne a l'objet mdc on fixe la valeur de X et on
boucle avec un YÊllbyname(object, nomfonction,vbMethod, X)
Object prenant la valeur de FormN ou ClasseMachin.
Je suis d'accord avec toi pour l'aspect Typage unique de la donnée,
contrairement à C++, mais compte tenu de l'objectif du modele objet qui
est de fournir une interface entre les espaces métriques continu 2D et
les espaces discrets périphérique et logique, la valeur supposée de X,Y
est par définition Double.
Si respect de cette condition :
Methode d'un objet publique acceptant en paramètre obligatoire X as
double et renvoyant une valeur Y AS Double
Alors
l'objet mdc est capable de s'interfacer
Christophe
RE,
> Mais je n'ai pas encore compris exactement ce à quoi
> ressort cet obscur <objet> en notre occurrence...
Sic MSDN CallByName:
<<Exécute une méthode d'un objet, ou définit ou renvoie une propriété
d'un objet.<<
Soit l'utilisateur définit une classe Fonction
dans la quelle il met toutes les méthodes publiques qu'il veut,
décrivant Y=f(x)
Pour l'utilisateur de mdc:
L'appel doit se faire comme suit
call mdc.dessinefonction( object,nomfonction)
Ensuite de manière interne a l'objet mdc on fixe la valeur de X et on
boucle avec un YÊllbyname(object, nomfonction,vbMethod, X)
Object prenant la valeur de FormN ou ClasseMachin.
Je suis d'accord avec toi pour l'aspect Typage unique de la donnée,
contrairement à C++, mais compte tenu de l'objectif du modele objet qui
est de fournir une interface entre les espaces métriques continu 2D et
les espaces discrets périphérique et logique, la valeur supposée de X,Y
est par définition Double.
Si respect de cette condition :
Methode d'un objet publique acceptant en paramètre obligatoire X as
double et renvoyant une valeur Y AS Double
Alors
l'objet mdc est capable de s'interfacer
Christophe
"christophe-pasde<> @wanadoo.fr>" <"christophe-pasde<> a écrit dans le
message de news:41b770f5$0$3409$RE,
> Mais je n'ai pas encore compris exactement ce à quoi
> ressort cet obscur <objet> en notre occurrence...
Sic MSDN CallByName:
<<Exécute une méthode d'un objet, ou définit ou renvoie une propriété
d'un objet.<<Soit l'utilisateur définit une classe Fonction
dans la quelle il met toutes les méthodes publiques qu'il veut,
décrivant Y=f(x)Pour l'utilisateur de mdc:
L'appel doit se faire comme suit
call mdc.dessinefonction( object,nomfonction)
Ensuite de manière interne a l'objet mdc on fixe la valeur de X et on
boucle avec un YÊllbyname(object, nomfonction,vbMethod, X)
Object prenant la valeur de FormN ou ClasseMachin.
Je suis d'accord avec toi pour l'aspect Typage unique de la donnée,
contrairement à C++, mais compte tenu de l'objectif du modele objet qui
est de fournir une interface entre les espaces métriques continu 2D et
les espaces discrets périphérique et logique, la valeur supposée de X,Y
est par définition Double.
Si respect de cette condition :
Methode d'un objet publique acceptant en paramètre obligatoire X as
double et renvoyant une valeur Y AS Double
Alors
l'objet mdc est capable de s'interfacer
Christophe
Bon, au niveau théorique no problem (c'est du C).
Et en VB6 cela marche comment ? bien ?
Je suis d'accord avec ta conception d'une classe utilisateur
de nom prédéterminé : cela me parait le plus simple,
sauf à rajouter une méthode
mdc.FixFunction( o as Object , f as Long) as boolean
qui passerait l'appel a n'importe quelle méthode publique
à la classe grapheuse....
@+
YannX
"christophe-pasde<> @wanadoo.fr>" <"christophe-pasde<> a écrit dans le
message de news:41b770f5$0$3409$8fcfb975@news.wanadoo.fr...
RE,
> Mais je n'ai pas encore compris exactement ce à quoi
> ressort cet obscur <objet> en notre occurrence...
Sic MSDN CallByName:
<<Exécute une méthode d'un objet, ou définit ou renvoie une propriété
d'un objet.<<
Soit l'utilisateur définit une classe Fonction
dans la quelle il met toutes les méthodes publiques qu'il veut,
décrivant Y=f(x)
Pour l'utilisateur de mdc:
L'appel doit se faire comme suit
call mdc.dessinefonction( object,nomfonction)
Ensuite de manière interne a l'objet mdc on fixe la valeur de X et on
boucle avec un YÊllbyname(object, nomfonction,vbMethod, X)
Object prenant la valeur de FormN ou ClasseMachin.
Je suis d'accord avec toi pour l'aspect Typage unique de la donnée,
contrairement à C++, mais compte tenu de l'objectif du modele objet qui
est de fournir une interface entre les espaces métriques continu 2D et
les espaces discrets périphérique et logique, la valeur supposée de X,Y
est par définition Double.
Si respect de cette condition :
Methode d'un objet publique acceptant en paramètre obligatoire X as
double et renvoyant une valeur Y AS Double
Alors
l'objet mdc est capable de s'interfacer
Christophe
Bon, au niveau théorique no problem (c'est du C).
Et en VB6 cela marche comment ? bien ?
Je suis d'accord avec ta conception d'une classe utilisateur
de nom prédéterminé : cela me parait le plus simple,
sauf à rajouter une méthode
mdc.FixFunction( o as Object , f as Long) as boolean
qui passerait l'appel a n'importe quelle méthode publique
à la classe grapheuse....
@+
YannX
"christophe-pasde<> @wanadoo.fr>" <"christophe-pasde<> a écrit dans le
message de news:41b770f5$0$3409$RE,
> Mais je n'ai pas encore compris exactement ce à quoi
> ressort cet obscur <objet> en notre occurrence...
Sic MSDN CallByName:
<<Exécute une méthode d'un objet, ou définit ou renvoie une propriété
d'un objet.<<Soit l'utilisateur définit une classe Fonction
dans la quelle il met toutes les méthodes publiques qu'il veut,
décrivant Y=f(x)Pour l'utilisateur de mdc:
L'appel doit se faire comme suit
call mdc.dessinefonction( object,nomfonction)
Ensuite de manière interne a l'objet mdc on fixe la valeur de X et on
boucle avec un YÊllbyname(object, nomfonction,vbMethod, X)
Object prenant la valeur de FormN ou ClasseMachin.
Je suis d'accord avec toi pour l'aspect Typage unique de la donnée,
contrairement à C++, mais compte tenu de l'objectif du modele objet qui
est de fournir une interface entre les espaces métriques continu 2D et
les espaces discrets périphérique et logique, la valeur supposée de X,Y
est par définition Double.
Si respect de cette condition :
Methode d'un objet publique acceptant en paramètre obligatoire X as
double et renvoyant une valeur Y AS Double
Alors
l'objet mdc est capable de s'interfacer
Christophe
Bon, au niveau théorique no problem (c'est du C).
Et en VB6 cela marche comment ? bien ?
Je suis d'accord avec ta conception d'une classe utilisateur
de nom prédéterminé : cela me parait le plus simple,
sauf à rajouter une méthode
mdc.FixFunction( o as Object , f as Long) as boolean
qui passerait l'appel a n'importe quelle méthode publique
à la classe grapheuse....
@+
YannX
Bnjr Nicolas,
Je ne comprends pas tres bien ta suggestion :
est-ce pour interpréter "on-line" uen fonciton introduite
au clavier par l'utilisateur ? J'aimerais voir un exemple,
car je pige pas trop l'interfaçage.....
Sur le problème actuel, pouvoir passer à une fonction
d'une classe graphique "grapheuse de courbes"
l'adresse d'une fonction à utiliser, il est implicite
que la fonction (éventuellement par un index)
a été programmée en VB à l'extérieur de la classe :
d'où nos interrogations pour passer l'AddressOf...
Mais je ne sais si christophe a résolu le truc...
@+
YannX
"ng" a écrit dans le message de
news:Salut,
Sinon si ton objectif est de faire un traceur de fonction qui sont
définies par l'utilisateur, tu pourras utiliser le moteur de script
(ms script control) pour évaluer ta fonction.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
christophe-pasde<> @wanadoo.fr>" < wrote:Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y >>> f(x) f étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de
stop ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu
qu'il fallait définir la fonction dans un module publique mais
après je comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris
correspond à ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bnjr Nicolas,
Je ne comprends pas tres bien ta suggestion :
est-ce pour interpréter "on-line" uen fonciton introduite
au clavier par l'utilisateur ? J'aimerais voir un exemple,
car je pige pas trop l'interfaçage.....
Sur le problème actuel, pouvoir passer à une fonction
d'une classe graphique "grapheuse de courbes"
l'adresse d'une fonction à utiliser, il est implicite
que la fonction (éventuellement par un index)
a été programmée en VB à l'extérieur de la classe :
d'où nos interrogations pour passer l'AddressOf...
Mais je ne sais si christophe a résolu le truc...
@+
YannX
"ng" <ng@ngsoft-fr.com> a écrit dans le message de
news:On8SOuW3EHA.2196@TK2MSFTNGP14.phx.gbl...
Salut,
Sinon si ton objectif est de faire un traceur de fonction qui sont
définies par l'utilisateur, tu pourras utiliser le moteur de script
(ms script control) pour évaluer ta fonction.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
christophe-pasde<> @wanadoo.fr>" < wrote:
Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y >>> f(x) f étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de
stop ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu
qu'il fallait définir la fonction dans un module publique mais
après je comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris
correspond à ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe
Bnjr Nicolas,
Je ne comprends pas tres bien ta suggestion :
est-ce pour interpréter "on-line" uen fonciton introduite
au clavier par l'utilisateur ? J'aimerais voir un exemple,
car je pige pas trop l'interfaçage.....
Sur le problème actuel, pouvoir passer à une fonction
d'une classe graphique "grapheuse de courbes"
l'adresse d'une fonction à utiliser, il est implicite
que la fonction (éventuellement par un index)
a été programmée en VB à l'extérieur de la classe :
d'où nos interrogations pour passer l'AddressOf...
Mais je ne sais si christophe a résolu le truc...
@+
YannX
"ng" a écrit dans le message de
news:Salut,
Sinon si ton objectif est de faire un traceur de fonction qui sont
définies par l'utilisateur, tu pourras utiliser le moteur de script
(ms script control) pour évaluer ta fonction.
--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/
christophe-pasde<> @wanadoo.fr>" < wrote:Bonjour,
J'ai écrit une classe permettant d'afficher un point P(x,y) où Y >>> f(x) f étant une fonction quelconque.
Pour l'instant ça s'utilise comme suit:
'ici f(x) = tan(x)'
dans un module de feuille ou publique:
mdc étant mon objet définit dans un module de classe:
'valeur de l'incrément réel (double)
dx = mdc.DefiniPasReal
'Valeur d'arrêt
Count& = mdc.DefiniCompteur
'Xo valeur départ
X = mdc.Espacereelleft
For i& = 0 To Count&
Y = Tan(X)
mdc.DessinePointFonction X, Y, RGB(255, 0, 0)
X = X + dx
Next i&
Je voudrais encapsulé ceci encore plus et écrire tout simplement:
mdc.dessinefonction( adresse ou nom de la fonction)
Quel que soit la fonction.(pour définir les valeur de départ et de
stop ainsi que l'incrément pas de soucis)
Aiguillé sur adressoff j'ai googler un peu sur le forum, j'ai vu
qu'il fallait définir la fonction dans un module publique mais
après je comprend pas bien.
Si quelqu'un a des lumières sur le sujet, merci de les partager.
De même des infos sur le callback qui si j'ai bien compris
correspond à ce genre de problématique.
J'avoue que j'ai du mal a comprendre le mécanisme.
Christophe
Christophe