Pas de problème (pb), que du PowerBuilder (PB) ^^

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 16-05-2012 11:00:05

infopower  
Membre Power Geek
Lieu: paris
Date d'inscription: 13-04-2011
Messages: 213
Pépites: 1,060
Banque: 0

Datawindow dans user object

Bonjour
Comme vous avez pour créer un datwindow dynamiquement dans power on peux utiliser la fonction OpenUserObject mais cette dernière ne marche pas dans un user object càd le système ne la connaît pas à l’intérieur d’un user object
Avez-vous une solution pour remédier à ce problème


la vie est une course et il faut avoir un bon depart

Hors ligne

 

#2 16-05-2012 12:13:28

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

Re: Datawindow dans user object

Bonjour, je ne cerne pas vraiment le problème. Peux-tu poster le code utilisé ?


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

Hors ligne

 

#3 16-05-2012 13:06:58

infopower  
Membre Power Geek
Lieu: paris
Date d'inscription: 13-04-2011
Messages: 213
Pépites: 1,060
Banque: 0

Re: Datawindow dans user object

J’ai crée un user object uo_user ensuite j’ai voulu créer dans ce dernier (dans un event) une datawindow dynamiquement en utilisant openuserobject

Code:

Dw_data = create datawindow
OpenUserObject(Dw_data,"datawindow",100,200)
Dw_data.Create (ls_syn)

Le système me retourne unknown function openuserobject


la vie est une course et il faut avoir un bon depart

Hors ligne

 

#4 16-05-2012 13:14:00

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: Datawindow dans user object

OpenUserObject() c'est une méthode des objets fenêtre, ça n'existe pas pour les userobjects.

Ce qu'il est possible de faire c'est d'appeler OpenUserObject() sur la fenêtre parente de uo_user.

Edit: Remarques

- comme dit dans la doc, il ne faut pas oublier le CloseUserObject() à la fermeture de la fenêtre, sans ça les objets créés dynamiquement ne sont pas libérés
- j'ai souvenir d'un usage problématique de OpenUserObject() sur une fenêtre où on voulait créer le userobject dans une page d'un tab control : pour que le changement de page se gère correctement, il avait fallu jouer avec le SetParent() de l'API windows. Une fois le userobject créé, il fallait faire un SetParent sur la tabpage concernée, et avant de tout libérer, il fallait refaire le SetParent sur la fenêtre pour que tout se passe bien.

Dernière modification par seki (16-05-2012 13:22:07)


The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

#5 16-05-2012 13:18:13

infopower  
Membre Power Geek
Lieu: paris
Date d'inscription: 13-04-2011
Messages: 213
Pépites: 1,060
Banque: 0

Re: Datawindow dans user object

nn je dois pas l'appeler ailleurs car j'en ai besoin dans un process qui s'execute en parallele (thread)


la vie est une course et il faut avoir un bon depart

Hors ligne

 

#6 16-05-2012 13:26:20

seki  
0x73656B69
Award: bf
Lieu: Laquenexy & Luxembourg
Date d'inscription: 20-11-2008
Messages: 1118
Pépites: 4,296,080,204
Banque: 9,223,372,036,854,776,000
Site web

Re: Datawindow dans user object

seki a écrit:

Ce qu'il est possible de faire c'est d'appeler OpenUserObject() sur la fenêtre parente de uo_user.

infopower a écrit:

nn je dois pas l'appeler ailleurs car j'en ai besoin dans un process qui s'execute en parallele (thread)

Ce que je voulais dire, c'était de faire

Code: pb

fenetre_parent_de_uo_user.OpenUserObject(Dw_data)

Puisqu'on ne peut pas faire

Code: pb

uo_user.OpenUserObject(Dw_data)

The best programs are the ones written when the programmer is supposed to be working on something else. - Melinda Varian

Mes réponses PB sur StackOverflow
http://stackoverflow.com/users/flair/317266.png

Hors ligne

 

Pied de page des forums

Propulsé par FluxBB 1.2.22