PB à toute heure et à tout moment. (à parcourir avec modération)

Le forum (ô combien francophone) des utilisateurs de Powerbuilder.

Recherche rapide

Annonce

Certaines rubriques, dont des cours, sont uniquement visibles par les membres du forum ^^.
Dans la rubrique Liens & Références, vous avez accès à un sommaire de téléchargement, profitez-en !
Il existe maintenant un nouveau TOPIC "Votre CV en Ligne" accessible uniquement par demande.

#1 06-07-2007 11:31:09

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

[RESOLU] Script de fermeture de fenêtre

Bonjour,

Je pensais que j'allais réussir à m'en sortir seul aujourd'hui mais c'est raté

J'ai juste une question concernant un script qui permet de remonter un objet jusqu'a la fenêtre dans lequel il est contenu pour pouvoir fermer cette fenêtre.

Voila mon script :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/



/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

if this.TypeOf() <> Window! then
  // Appel recursif de la fonction
  of_femer_fenetre_parent(Parent)
else
  // Femerture de la fenêtre
  close(this)
  return 1
end if


Et l'erreur que j'obtiens est la suivante :

(0023): Error     C0082: Reference argument must be a non-constant and non-readonly variable reference.
(0026): Error     C0052: Bad argument list for function: Close

La première erreur pointe sur la ligne "of_fermer_parent(Parent)"
La deuxième ligne pointe evidemment sur la ligne "close(this)"

Quels changements faut t'il faire pour que le code soit valide?

Merci de vos reponses

Dernière modification par Nephtis (09-07-2007 15:08:52)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#2 06-07-2007 11:38:00

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

Bonjour,

Je pensais que j'allais réussir à m'en sortir seul aujourd'hui mais c'est raté

J'ai juste une question concernant un script qui permet de remonter un objet jusqu'a la fenêtre dans lequel il est contenu pour pouvoir fermer cette fenêtre.

Voila mon script :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/



/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

if this.TypeOf() <> Window! then
  // Appel recursif de la fonction
  of_femer_fenetre_parent(Parent)
else
  // Femerture de la fenêtre
  close(this)
  return 1
end if


Et l'erreur que j'obtiens est la suivante :

(0023): Error     C0082: Reference argument must be a non-constant and non-readonly variable reference.
(0026): Error     C0052: Bad argument list for function: Close

La première erreur pointe sur la ligne "of_fermer_parent(Parent)"
La deuxième ligne pointe evidemment sur la ligne "close(this)"

Quels changements faut t'il faire pour que le code soit valide?

Merci de vos reponses

Ta fonction of_fermer_parent attent un argument passé par référence (un pointeur sur l'objet => une variable en PB) or tu lui passes l'objet parent directement (pour les puristes : je fais un raccourci )_
Si tu regardes dans ta fonction il doit y avoir un endroit où tu affectes une valeur à l'argument en entrée ou à une de ses propriétés...

Pour la deuxième erreur, regardes au debug, le this serait pas NULL des fois ?


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#3 06-07-2007 11:44:49

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

D'accord mais en ce qui concerne l'erreur sur le "close"? (je peut pas regarder en debug puisque la fonction ne veut pas s'enregistrer )

Moi je vois pas pourquoi il y a un mauvais nombre d'argument

Mon nouveau script :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/

PowerObject fen_par

/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

fen_par = Parent

if this.TypeOf() <> Window! then
  // Appel recursif de la fonction
  of_femer_fenetre_parent(fen_par)
else
  // Femerture de la fenêtre
  close(this)
  return 1
end if

Dernière modification par Nephtis (06-07-2007 11:46:54)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#4 06-07-2007 11:49:29

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

D'accord mais en ce qui concerne l'erreur sur le "close"? (je peut pas regarder en debug puisque la fonction ne veut pas s'enregistrer )

Moi je vois pas pourquoi il y a un mauvais nombre d'argument

Mon nouveau script :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/

PowerObject fen_par

/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

fen_par = Parent

if this.TypeOf() <> Window! then
  // Appel recursif de la fonction
  of_femer_fenetre_parent(fen_par)
else
  // Femerture de la fenêtre
  close(this)
  return 1
end if

Oups autant pour moi !
Ben oui, this est un userobject pas une fenêtre
Déclares une variable de type window, dans le else affectes this et fais le close de la variable


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#5 06-07-2007 11:54:08

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Voila a nouveau le script :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/

PowerObject fen_par
Window fen_close

/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

fen_par = Parent

if this.TypeOf() <> Window! then
  // Appel recursif de la fonction
  of_femer_fenetre_parent(fen_par)
else
  // Femerture de la fenêtre
  fen_close = this
  close(fen_close)
  return 1
end if


Sur l'affectation "fen_close = this" j'ai le message d'erreur suivant :

Incompatible types in assignement: window, of_fermer_fenetre_parent

Qu'elle est la propriété de "this" qui référence l'objet qui à appelé la fonction of_fermer_fenetre_parent?


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#6 06-07-2007 11:54:08

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Script de fermeture de fenêtre

Bonjour,

pour faire ça récursivement ça serait une fonction globale du genre f_fermer_fenetre_parent( PowerObject as_object )

Code: pb

if as_object.TypeOf() <> Window! then

  // Appel recursif sur le parent de l'objet
  f_fermer_fenetre_parent( as_object.Parent )

else

  // Fermeture de la fenêtre
  close( as_object )

end if


Et quelquepart dans ton contrôle sur la page :

Code: pb

f_fermer_fenetre_parent( This )

N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#7 06-07-2007 11:55:52

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

Voila a nouveau le script :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/

PowerObject fen_par
Window fen_close

/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

fen_par = Parent

if this.TypeOf() <> Window! then
  // Appel recursif de la fonction
  of_femer_fenetre_parent(fen_par)
else
  // Femerture de la fenêtre
  fen_close = this
  close(fen_close)
  return 1
end if


Sur l'affectation "fen_close = this" j'ai le message d'erreur suivant :

Incompatible types in assignement: window, of_fermer_fenetre_parent

Qu'elle est la propriété de "this" qui référence l'objet qui à appelé la fonction of_fermer_fenetre_parent?

Argl, of_fermer_fenetre_parent est une fonction globale ???? Si oui, alors effectivement il y a un gros prob de conception...
Pour info, une fonction globale c'est f_ pas of_ qui est plustôt réservé pour les fonctions d'objet => d'où ma confusion. Désolé !


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#8 06-07-2007 11:58:20

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Pas tout à fait raison eRaSorZ car dans ce cas y a le message d'erreur "Incompatible property parent for type powerobject"

Pour ce qui est du nommage des fonction et autres variables je suis désolé car je fait encore de grosses erreurs sur les prefixes

Dernière modification par Nephtis (06-07-2007 12:00:57)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#9 06-07-2007 12:05:46

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

Pas tout à fait raison eRaSorZ car dans ce cas y a le message d'erreur "Incompatible property parent for type powerobject"

Pour ce qui est du nommage des fonction et autres variables je suis désolé car je fait encore de grosses erreurs sur les prefixes

Ca peut marcher... A voir....

Code: PB

if as_object.TypeOf() <> Window! then

  // Appel recursif sur le parent de l'objet
  f_fermer_fenetre_parent(as_object.dynamic parent )

else

  // Fermeture de la fenêtre
  close( as_object )

end if

Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#10 06-07-2007 12:08:06

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

L'ajout du dynamic ne résoud pas mon problême


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#11 06-07-2007 12:13:18

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

Pas tout à fait raison eRaSorZ car dans ce cas y a le message d'erreur "Incompatible property parent for type powerobject"

oups utilise plutot object.GetParent()

Nephtis a écrit:

Pour ce qui est du nommage des fonction et autres variables je suis désolé car je fait encore de grosses erreurs sur les prefixes

d'ailleurs je me suis bien trompé aussi sur le suffixe : as_ c'est pour une chaine
utilise apo_object

pour les conventions de nommage un petit coup d'oeil ici


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#12 06-07-2007 12:14:47

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Arghhh, je me suis fait devancer par erasorz

Bon j'ai cherché un peu (eh oui ça m'arrive ) et donc il faut appeler la fonction "getParent" du PowerObject

Je poste le code, ça peut toujours servir à un autre petit débutant comme moi

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/

/**********************************************************************/
//
////  Déclaration des paramètres
//
/**********************************************************************/

PowerObject lpo_parent


/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

lpo_parent = this.getParent()

if apo_objet.TypeOf() <> Window! then
  // Appel recursif de la fonction
  f_fermer_fenetre_parent(lpo_parent)
else
  // Femerture de la fenêtre
  close(apo_objet)
end if

Dernière modification par Nephtis (06-07-2007 12:24:58)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#13 06-07-2007 12:15:17

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

eRaSorZ a écrit:

d'ailleurs je me suis bien trompé aussi sur le suffixe : as_ c'est pour une chaine
utilise apo_object

J'ai pas voulu relever


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#14 06-07-2007 12:18:28

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

L'ajout du dynamic ne résoud pas mon problême

Normal, l'idée était naze. Désolé.
Bon, il va falloir que je parte en week-end moi, parce que là ça devient n'importe quoi


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#15 06-07-2007 12:26:59

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Juste une question : quand le probleme est résolu est ce que ce qu'il y a une case à cocher pour quon passe le sujet en résolu (si elle existe je l'ai pas trouvée) ou est ce que c'est les modéros qui s'en occupent?


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#16 06-07-2007 12:29:53

pick ouic  
La bourse ou la vie ^^
Award: gearotter
Lieu: Massy-Verrières
Date d'inscription: 29-05-2006
Messages: 4655
Pépites: 933
Banque: 2,147,483,647
Site web

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

Juste une question : quand le probleme est résolu est ce que ce qu'il y a une case à cocher pour quon passe le sujet en résolu (si elle existe je l'ai pas trouvée) ou est ce que c'est les modéros qui s'en occupent?

tu peux le faire toi meme, en y allant sur ton premier post, et tu changes au niveau du titre


Connaitre son ignorance est une grande part de la connaissance.
http://animegifs.free.fr/anime/mazinger/mazinger.gif

Hors ligne

 

#17 06-07-2007 12:42:36

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Ben en fait pas tout à fait résolu

Quand j'execute la fonction il n'arrive même pas à retrouver le premier parent (reference to NULL object)

Voici le code que j'ai placé sur un bouton "quitter" :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Appel de la fonction f_fermer_fenetre_parent()
*    pour fermer la fenetre d'onglets
*
**********************************************************************/

/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

PowerObject lpo_parent
lpo_parent = Parent

f_fermer_fenetre_parent(lpo_parent)


Ce bouton est lui même placé sur un UserObject : cst_titres
... qui est placé sur tab_pense-bete
... qui est placé sur w_pense-bete

J'ai l'impression que dans ma fonction le "this" ne pointe pas sur l'objet qui l'a appelé (comment voit t'on le contenu de la variable "this" en mode debug?)

En effet j'ai de gros doutes concernant le "this" dans la fonction car dans le code de l'evenement "clicked" de mon bouton, Parent me renvoie le bon objet et en modifiant le script et en appelant la fonction directement à partir de this je n'arrive plus à récupérer le parent (je sais pas si c'est très clais ce que je dit )

Dernière modification par Nephtis (06-07-2007 12:54:04)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#18 06-07-2007 12:54:03

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Script de fermeture de fenêtre

normal du fais deux fois parent sur le bouton (une fois dans le bouton et une fois dans la fonction)
bouton -> fenêtre -> null

dans ton bouton il faut faire un f_fermer_fenetre_parent(This)

d'ailleurs attention dans ta fonction il faut faire le getparent dans le Then (tu peux te passer de ta variable locale lpo_parent)


Code: pb

 
if apo_objet.TypeOf() <> Window! then
  // Appel recursif de la fonction
  f_fermer_fenetre_parent(apo_objet.getParent())
else
  // Femerture de la fenêtre
  close(apo_objet)
end if

N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#19 06-07-2007 12:57:13

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

J'ai fait le test juste apres avec this mais le résultat est le même.

Au moment de l'appel de la ligne de code lpo_parent = this.getParent() de la fonction f_fermer_fenetre_parent je reçoit le message d'erreur "Reference à un objet NULL"


Si je fait le getParent dans l'appel recursif j'obtient l'erreur :

C0082: Reference argument must be a non-constant and non-readonly variable reference.

Dernière modification par Nephtis (06-07-2007 12:58:59)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#20 06-07-2007 12:58:21

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

J'ai fait le test juste apres avec this mais le résultat est le même.

Au moment de l'appel de la ligne de code lpo_parent = this.getParent() de la fonction f_fermer_fenetre_parent je reçoit le message d'erreur "Reference à un objet NULL"

normal il faut aussi mettre le getparent dans le then (j'ai édité mon post entretemps )


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#21 06-07-2007 12:59:43

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Double edit lol
Je peut pas mettre le getParent dans l'appel de la fonction


Le paramètre de ma fonction je le passe par "value" ou par "reference"? (je me rappele plus lequel correspond à la copie et lequel correspond à un pointeur)

Dernière modification par Nephtis (06-07-2007 13:04:10)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#22 06-07-2007 13:05:52

erasorz  
Admin
Lieu: Babylone
Date d'inscription: 23-11-2006
Messages: 5121
Pépites: 97,197
Banque: 2,147,483,647

Re: [RESOLU] Script de fermeture de fenêtre

Nephtis a écrit:

Je peut pas mettre le getParent dans l'appel de la fonction

alors quand même un lpo_parent à mettre mais dans le then


Nephtis a écrit:

Le paramètre de ma fonction je le passe par "value" ou par "reference"? (je me rappele plus lequel correspond à la copie et lequel correspond à un pointeur)

si c'est un objet c'est de toute façon passé par référence


N'envoyez jamais un humain faire le travail d'un programme.

Hors ligne

 

#23 06-07-2007 13:24:35

Chrnico  
N2I Power
Award: bf
Lieu: Vanves
Date d'inscription: 05-06-2007
Messages: 1206
Pépites: 12,884,901,943
Banque: 9,223,372,036,854,776,000
Site web

Re: [RESOLU] Script de fermeture de fenêtre

eRaSorZ a écrit:

Nephtis a écrit:

Je peut pas mettre le getParent dans l'appel de la fonction

alors quand même un lpo_parent à mettre mais dans le then


Nephtis a écrit:

Le paramètre de ma fonction je le passe par "value" ou par "reference"? (je me rappele plus lequel correspond à la copie et lequel correspond à un pointeur)

si c'est un objet c'est de toute façon passé par référence

Exact.
Petit moyen mnémonique : un pointeur fait référence à une valeur


Tu dois donc tu peux (Kant)

Tu peux donc tu dois (N2i)
www.n2i.fr

Hors ligne

 

#24 06-07-2007 14:41:31

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

Je suis bloqué sur un problême un peu plus urgent, je retesterais tout quand j'aurais résolu l'autre probleme (pour l'instant ma fenetre je peut toujours la fermer grace à la croix sur la barre de titre)


Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

#25 09-07-2007 15:08:20

Nephtis  
Bienfaiteur du site
Award: bf
Lieu: Longjumeau
Date d'inscription: 29-06-2007
Messages: 665
Pépites: 17,189,873,958
Banque: 9,223,372,036,854,776,000

Re: [RESOLU] Script de fermeture de fenêtre

C'est bon j'ai réussi à débugger mon script (à tête reposée c'est beaucoup plus clair)

Je donne le source du script, ça peut toujours servir :

Code: pb

/**********************************************************************
*
* Auteur : David DIAS
*
* Date : 06/07/2007
*
* Commentaires :
*    Fonction recursive qui va partir d'une instance fille et remonter
*     jusqu'a la première fenêtre pour la fermer
*    Permet aussi de femer l'objet courant si c'est une fenêtre
**********************************************************************/

/**********************************************************************/
//
////  Déclaration des paramètres
//
/**********************************************************************/

PowerObject lpo_parent


/**********************************************************************/
//
////  Debut du script
//
/**********************************************************************/

lpo_parent = apo_objet.getParent()

if apo_objet.TypeOf() <> Window! then
  // Appel recursif de la fonction
  f_fermer_fenetre_parent(lpo_parent)
else
  // Femerture de la fenêtre
  close(apo_objet)
end if

Qui sème des problèmes, récolte des réponses.
PB 6.5 || ASE 12.5.4 || XP SP3

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22