Après windows pour les nuls, voici PB pour les bons (ou presque).

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.
  • Index
  •  » Powerscripts
  •  » [RESOLU] Connaître le nombre d'instance d'une fenêtre

#1 12-08-2010 12:16:38

Gilles  
Membre
Lieu: Nogent Sur Seine
Date d'inscription: 15-03-2010
Messages: 16
Pépites: 65
Banque: 67,334
Site web

[RESOLU] Connaître le nombre d'instance d'une fenêtre

Bien le bonjour adeptes du PB,


je cherche aujourd'hui à connaitre le nombre d'instances d'une fenêtre. Je m'explique :


Une fenêtre va chercher des documents dans la base de données et me les affiches chacun dans une fenêtres (du texte).

Lorsque la dernière fenêtre de document est fermée par l'utilisateur, je souhaite faire remonter une autre fenêtre.


En gros, je cherche à savoir le nombre d'instances de ma fenêtre à la fermeture (donc dans mon close()), de sorte que si il n'y en a qu'une, donc la dernière, elle appelle mon autre fenêtre avant de se fermer.


j'espère que c'est suffisamment clair, merci d'avance !

Dernière modification par Gilles (13-08-2010 09:07:47)


PB 10.5.2
Oracle 10g

http://gilles.baudlet.free.fr/storage/userbar.gif

Hors ligne

 

#2 12-08-2010 12:26:15

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

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

Bonjour, tu peux (un peu comme c'est fait dans un projet standard MDI via wizard) tenir à jour un tableau des fenêtres ouvertes (ajout à l'open, retrait au close)


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

Hors ligne

 

#3 12-08-2010 12:29:20

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

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

ou alors, boucler sur les fenêtres, et les identifier en t'inspirant de ce code exemple :

Code: pb

// The following script for a menu selection loops through the open sheets in front-to-back order and displays the names of the open sheets in the ListBox lb_sheets:

boolean bValid

window wSheet

lb_sheets.Reset()

wSheet = ParentWindow.GetFirstSheet()

IF IsValid(wSheet) THEN

   lb_sheets.AddItem(wSheet.Title)

   DO

   wSheet = ParentWindow.GetNextSheet(wSheet)

   bValid = IsValid (wSheet)

   IF bValid THEN lb_sheets.AddItem(wSheet.Title)

   LOOP WHILE bValid

END IF

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

Hors ligne

 

#4 12-08-2010 12:41:22

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

ta fenêtre qui affiche tes documents c'est toujours la même?

Si c'est le cas alors créé une variable SHARED qui s'incrémente de 1 à l'open et qui se décrémente de 1 également sur le close
et dans le close tu teste cette variable si elle est à 1 alors tu es en train de fermer ta dernière fenêtre document

Dernière modification par Yanis (12-08-2010 12:41:42)

Hors ligne

 

#5 12-08-2010 12:47:34

Gilles  
Membre
Lieu: Nogent Sur Seine
Date d'inscription: 15-03-2010
Messages: 16
Pépites: 65
Banque: 67,334
Site web

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

le problème c'est que ces fenêtres se ferment, donc je ne peux pas stocker de variable.

je met en place un script depuis celui de erasorz  pour essayer, qui incrémente de 1 à chaque fois qu'il tombe sur ma fenêtre dans la liste, j'aurai normalement 1 si c'est la dernière

Je pensais qu'il y avait un moyen simple d'avoir les fenêtres en instance.


PB 10.5.2
Oracle 10g

http://gilles.baudlet.free.fr/storage/userbar.gif

Hors ligne

 

#6 12-08-2010 12:54:37

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

Une variable SHARED est disponible tant que la classe est encore instancié au moins une fois.
Les variables SHARED se définissent dans la listbox ( global variable , shared variable , instance varibale etc..)

Exemple : si tu as un fenêtre w_document et que tu l'ouvre 5 fois  ta variable SHARED seras toujours valide tant que la dernière instance n'est pas fermé par l'utilisateur

Dernière modification par Yanis (12-08-2010 12:56:04)

Hors ligne

 

#7 12-08-2010 13:06:58

Gilles  
Membre
Lieu: Nogent Sur Seine
Date d'inscription: 15-03-2010
Messages: 16
Pépites: 65
Banque: 67,334
Site web

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

merci pour l'explication, vivement la semaine prochaine (formation PB )

je vais faire une petite recherche sur les variables SHARED, sinon le script fonctionne, merci !


PB 10.5.2
Oracle 10g

http://gilles.baudlet.free.fr/storage/userbar.gif

Hors ligne

 

#8 12-08-2010 13:13:49

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

Les variables SHARED sont la plus part de temps utilisées pour celà : compter le nombre d'instance d'un objet , d'une fenêtre etc..

Hors ligne

 

#9 12-08-2010 13:16:06

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

Petite question personnelle. je vois dans ton profil <Nogent sur seine> ne travaillerais tu pas pour le groupe SOUFFLET.

Hors ligne

 

#10 12-08-2010 13:28:20

Gilles  
Membre
Lieu: Nogent Sur Seine
Date d'inscription: 15-03-2010
Messages: 16
Pépites: 65
Banque: 67,334
Site web

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

oui, je viens d'y entrer


PB 10.5.2
Oracle 10g

http://gilles.baudlet.free.fr/storage/userbar.gif

Hors ligne

 

#11 12-08-2010 13:52:01

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

tu travaille donc sur l'application négoce

Hors ligne

 

#12 12-08-2010 13:59:31

Gilles  
Membre
Lieu: Nogent Sur Seine
Date d'inscription: 15-03-2010
Messages: 16
Pépites: 65
Banque: 67,334
Site web

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

tu as bosser dessus ?


PB 10.5.2
Oracle 10g

http://gilles.baudlet.free.fr/storage/userbar.gif

Hors ligne

 

#13 12-08-2010 14:04:59

Yanis  
Modérateur
Lieu: paris
Date d'inscription: 16-06-2010
Messages: 349
Pépites: 665
Banque: 150

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

oui et je connais bien ALEXANDRA

Hors ligne

 

#14 12-08-2010 14:24:51

Gilles  
Membre
Lieu: Nogent Sur Seine
Date d'inscription: 15-03-2010
Messages: 16
Pépites: 65
Banque: 67,334
Site web

Re: [RESOLU] Connaître le nombre d'instance d'une fenêtre

SJ ?


PB 10.5.2
Oracle 10g

http://gilles.baudlet.free.fr/storage/userbar.gif

Hors ligne

 
  • Index
  •  » Powerscripts
  •  » [RESOLU] Connaître le nombre d'instance d'une fenêtre

Pied de page des forums

Propulsé par FluxBB 1.2.22