OVH Cloud OVH Cloud

[WD7.5]ChampClone

6 réponses
Avatar
Sébastien MAZET
Bonjour à tous,
j'ai découvert la syntaxe de
ChampClone(nomduchampssource,nomNouveau,Position)

C'est à dire que à partir d'un BOUTON de la fenêtre, on peut créer un
nouveau bouton.

Je souhaite maintenant créer ma propre classe d'objet BOUTONPERSO
mais en utilisant la Classe BOUTON ( est elle accessible ? ) de Windev afin
de compléter les méthodes
et propriété.

Cela est il réalisable ?

Sébastien





--
--

6 réponses

Avatar
Romain PETIT
Sébastien MAZET a écrit :

Bonjour à tous,



Bonjour,

Je souhaite maintenant créer ma propre classe d'objet BOUTONPERSO
mais en utilisant la Classe BOUTON ( est elle accessible ? ) de
Windev afin de compléter les méthodes
et propriété.
Cela est il réalisable ?



Tu pourras modifier facilement les propriétés qui sont accessibles par
programmation (libellé, image, hauteur, largeur etc...) en travaillant avec
les indirections.
Par contre, le code d'éxécution de chaque bouton sera difficile à
personnaliser et tu vas devoir avoir recours à la compilation dynamique en
jonglant avec les indirections...réalisable mais complexe.

Attention, champclone est une fonction inachevée : il n'y a pas moyen de
détruire "proprement" l'objet cloné sans fermer l'objet parent...


A+

--
Romain PETIT
(mailto:rompetit_chez_ifrance.com)
Avatar
Sébastien MAZET
Bonjour,
Je peux facilement modifier toutes les
propriétés sans problèmes.

Avec les indirection et des variables Globales
le code des boutons ( CLIC, SURVOL etc) est
paramétrable sans passer par la compil dynamique.
Cela fonctionne bien mais je suis limité aux méthodes et
propriété de l'Objet Bouton.

MAIS
Je souhaite pouvoir créer de nouvelles propriétés
à cet objet bouton : donc créer un nouvelle classe...



--
--
"Romain PETIT" a écrit dans le message de
news:3f66c09f$0$20634$
Sébastien MAZET a écrit :

> Bonjour à tous,

Bonjour,

> Je souhaite maintenant créer ma propre classe d'objet BOUTONPERSO
> mais en utilisant la Classe BOUTON ( est elle accessible ? ) de
> Windev afin de compléter les méthodes
> et propriété.
> Cela est il réalisable ?

Tu pourras modifier facilement les propriétés qui sont accessibles par
programmation (libellé, image, hauteur, largeur etc...) en travaillant


avec
les indirections.
Par contre, le code d'éxécution de chaque bouton sera difficile à
personnaliser et tu vas devoir avoir recours à la compilation dynamique en
jonglant avec les indirections...réalisable mais complexe.

Attention, champclone est une fonction inachevée : il n'y a pas moyen de
détruire "proprement" l'objet cloné sans fermer l'objet parent...


A+

--
Romain PETIT
(mailto:rompetit_chez_ifrance.com)



Avatar
Fabrice Burghgraeve
bonjour.

"Sébastien MAZET" a écrit dans le message de
news:bk6emo$vpg$

Bonjour à tous,
j'ai découvert la syntaxe de
ChampClone(nomduchampssource,nomNouveau,Position)

C'est à dire que à partir d'un BOUTON de la fenêtre, on peut créer un
nouveau bouton.

Je souhaite maintenant créer ma propre classe d'objet BOUTONPERSO
mais en utilisant la Classe BOUTON ( est elle accessible ? ) de Windev


afin
de compléter les méthodes
et propriété.

Cela est il réalisable ?



A ma connaissance, les classes des objets utilises par windev (fenetres,
boutons...) ne sont pas accessibles.

--
Fabrice Burghgraeve
Computer & Services

(enlevez le _pas_de_spam_ pour me répondre en privé)
Avatar
Romain PETIT
Sébastien MAZET a écrit :

Je souhaite pouvoir créer de nouvelles propriétés
à cet objet bouton : donc créer un nouvelle classe...



Tu peux créer ton clone à l'aide de ta propre classe qui va instancier
l'objet et donc ajouter autant de variables que tu veux.
A toi de coder le tout.

Exemple

bouton est un objet MonBouton(LeNomdeMonBouton)
bouton:maNouvellepropriété = faux
bouton:ChangeValeurdeMaNouvellePropriété()


****
MonBouton est une classe
Libellé est une chaine
maNouvellepropriété est un booleen
....
FIN

Constructeur(sNomBouton...)
champclone(boutonréférence, sNombouton...)


methode ChangeValeurdeMaNouvellePropriété
si :maNouvellepropriété alors
...
sinon
...
fin


--
Romain PETIT
(mailto:rompetit_chez_ifrance.com)
Avatar
Sébastien MAZET
En effet cela ne semble pas possible
merci à Romain PETIT pour la piste

Sébastien


--
--
"Fabrice Burghgraeve" a
écrit dans le message de news:bk6hq3$sl6$
bonjour.

"Sébastien MAZET" a écrit dans le message de
news:bk6emo$vpg$
>
> Bonjour à tous,
> j'ai découvert la syntaxe de
> ChampClone(nomduchampssource,nomNouveau,Position)
>
> C'est à dire que à partir d'un BOUTON de la fenêtre, on peut créer un
> nouveau bouton.
>
> Je souhaite maintenant créer ma propre classe d'objet BOUTONPERSO
> mais en utilisant la Classe BOUTON ( est elle accessible ? ) de Windev
afin
> de compléter les méthodes
> et propriété.
>
> Cela est il réalisable ?

A ma connaissance, les classes des objets utilises par windev (fenetres,
boutons...) ne sont pas accessibles.

--
Fabrice Burghgraeve
Computer & Services

(enlevez le _pas_de_spam_ pour me répondre en privé)




Avatar
Sébastien MAZET
J'ai d'ailleurs creusé la piste
et cela fonctionne parfaitement
Mon Objet SUPERBOUTON inclus
le ChampClone dans le Constructeur

Il suffit ensuite de redéfinir une Méthode
à l'objet SUPERBOUTON pour chaque propriété
du champs Bouton


exemple :

Méthode Libelle
PROCEDURE Libelle(valeur)
{CLONE}..libelle=valeur


Puis rajouter mes propres méthode :
Méthode xy
etc ...






et dans le code

MonBouton est un objet SUPERBOUTON

MonBouton:libelle("mon libelle du super bouton")


On peut donc utiliser les "Objet" Windev ( boutons, champs de saisie
etc ) et rajouter des méthodes à ces objets même sans pouvoir avoir accès à
la
classe de ces objets.

Seule restriction : la destruction de ces SUPEROBJETS : en effet on ne peut
pas
détruire proprement un Champs Cloné.
Dans mon cas cela ne pose pas de problèmes.

( Une fermeture de fenêtre réalise cette opération )

Sébastien





--
--
"Sébastien MAZET" a écrit dans le message de
news:bk6lct$6b4$
En effet cela ne semble pas possible
merci à Romain PETIT pour la piste

Sébastien


--
--
"Fabrice Burghgraeve" a
écrit dans le message de news:bk6hq3$sl6$
> bonjour.
>
> "Sébastien MAZET" a écrit dans le message de
> news:bk6emo$vpg$
> >
> > Bonjour à tous,
> > j'ai découvert la syntaxe de
> > ChampClone(nomduchampssource,nomNouveau,Position)
> >
> > C'est à dire que à partir d'un BOUTON de la fenêtre, on peut créer un
> > nouveau bouton.
> >
> > Je souhaite maintenant créer ma propre classe d'objet BOUTONPERSO
> > mais en utilisant la Classe BOUTON ( est elle accessible ? ) de Windev
> afin
> > de compléter les méthodes
> > et propriété.
> >
> > Cela est il réalisable ?
>
> A ma connaissance, les classes des objets utilises par windev (fenetres,
> boutons...) ne sont pas accessibles.
>
> --
> Fabrice Burghgraeve
> Computer & Services
>
> (enlevez le _pas_de_spam_ pour me répondre en privé)
>
>