FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Objet 3D_PLANE, réalisation d'un dé en 3D
par Marc Aujourd'hui à 0:33

» Cacher la barre des tâches
par Klaus Hier à 21:27

» Une "base de connaissance" - pour jouer ou plus si affinité
par Minibug Hier à 10:29

» quel est ce comportement de Panoramic_editor
par Oscaribout Hier à 0:22

» Des FORM(s) Colorés
par Jean Claude Dim 20 Mai 2018 - 20:58

» Recherches dans un fichier texte
par JL35 Dim 20 Mai 2018 - 20:18

» Problème d'affichage des pages du forum (Résolu)
par Jean Claude Dim 20 Mai 2018 - 20:00

» Créer une application *.exe
par Yannick Ven 18 Mai 2018 - 20:01

» [RÉSOLU] Priorité affichage des objets : comment la définir?
par papydall Ven 18 Mai 2018 - 18:22

» Aucune différence entre ON_CLICK et ON_DOUBLE_CLICK
par Jean Claude Jeu 17 Mai 2018 - 8:37

» [Résolu] Récuperer les fonctions systeme de Panoramic
par Minibug Mar 15 Mai 2018 - 23:21

» Est-ce qu'un fichier est inclus dans l'application ?
par Yannick Mar 15 Mai 2018 - 12:04

» Création d'une application avec Panoramic_Editor
par Klaus Mar 15 Mai 2018 - 0:36

» Pour faire patienter
par Minibug Lun 14 Mai 2018 - 21:25

» Une copie de Panoramic Editeur
par Minibug Lun 14 Mai 2018 - 19:55

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Mai 2018
LunMarMerJeuVenSamDim
 123456
78910111213
14151617181920
21222324252627
28293031   
CalendrierCalendrier

Partagez | 
 

 GetAncestor de la USER32.DLL

Aller en bas 
AuteurMessage
papydall

avatar

Nombre de messages : 5906
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 2:48

Petite démonstration de la fonction GetAncestor de la USER32.DLL

Cliquez sur les boutons pour voir s'afficher leur ancêtre.


Code:

rem ============================================================================
rem              GetAncestor de user32.dll
rem ============================================================================
rem      Retourne le HANDLE de l’ancêtre de l’objet spécifié
rem      La fonction nécessite 2 parametres :
rem      * Le handle de l’objet dont on cherche l’ancêtre
rem        Si ce paramètre est celui du BUREAU (DESKTOP), la fonction retourne 0
rem      * Un flag ( = 2) pour spécifier le parent
rem ============================================================================
rem L’appel est :
rem       _________________________________________________
rem      |                                                 |
rem      | dll_call2("GetAncestor", handle_de_l_objet , 2) |
rem      |_________________________________________________|

rem ============================================================================
label clic
dim ret%,hform0%,hform10%,hbouton11%,hbouton20%,hbouton40%,hlist30% ,hlist50%

caption 0,"FORM 0"
form 10 : top 10,150 : left 10,800  : caption 10,"FORM 10"
button 11 : parent 11,10 : top 11,20 : left 11,50 : caption 11,"Bouton 11" : on_click 11,clic
button 20 : top 20,20 : left 20,50 : caption 20,"Bouton 20" : on_click 20,clic
list 30   : top 30,20 : left 30,150 : width 30,250 : height 30,150 : font_name 30,"courier"
button 40 : top 40,20 : left 40,500 : caption 40,"Bouton 40" : on_click 40,clic
list 50   : top 50,200 : left 50,150 : width 50,250 : height 50,150 : font_name 50,"courier"
item_add 30,"LIST 30"  : item_add 30,""
item_add 50,"LIST 50"  : item_add 50,""
hform0%    = handle(0)  : item_add 30," Handle FORM 00   : " + str$(hform0%)
hform10%   = handle(10) : item_add 30," Handle FORM 10   : " + str$(hform10%)
hbouton11% = handle(11) : item_add 30," Handle BUTTON 11 : " + str$(hbouton11%)
hbouton20% = handle(20) : item_add 30," Handle BUTTON 20 : " + str$(hbouton20%)
hbouton40% = handle(40) : item_add 30," Handle BUTTON 40 : " + str$(hbouton40%)
hlist30%   = handle(30) : item_add 30," Handle LIST 30   : " + str$(hlist30%)
hlist50%   = handle(50) : item_add 30," Handle LIST 50   : " + str$(hlist50%)

dll_on "user32.dll"

end
rem ============================================================================
Clic:
   select number_click
       case 11 : item_add 50," Parent  Bouton 11 : " + str$(parent(11))
                 item_add 50," Ancêtre Bouton 11 : " + str$(dll_call2("GetAncestor",hbouton11%,2))
       case 20 : item_add 50," Parent  Bouton 20 : " + str$(parent(20))
                 item_add 50," Ancêtre Bouton 20 : " + str$(dll_call2("GetAncestor",hbouton20%,2))
       case 40 : item_add 50," Parent  Bouton 40 : " + str$(parent(40))
                 item_add 50," Ancêtre Bouton 40 : " + str$(dll_call2("GetAncestor",hbouton40%,2))
   end_select
return
rem ============================================================================


Dernière édition par papydall le Sam 15 Juil 2017 - 18:22, édité 2 fois (Raison : Correction du verbe voir et du nom ancêtre pour faire plaisir à JL35)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Yannick

avatar

Nombre de messages : 8074
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Sam 15 Juil 2017 - 8:45

Cela mériterait quelques lignes d' explication... scratch
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 6257
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 10:50

P'têt' ben qu'oui !

Je clique sur un bouton, n'importe lequel  (ici le 11):


Papydall, euh...
Citation :
... pour voire s'afficher leur encêtre.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5906
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 13:23

En cliquant successivement sur les boutons 11, 40, 20 on obtient :



Le PARENT de l’objet 11 (bouton qui appartient au FORM 10) est 10
Son ancêtre (ANCESTOR) donne le HANDLE de son PARENT, c-à-d ici le handle du FORM 10.

Le PARENT de l’objet 40 (bouton qui appartient implicitement au FORM 0) est 0
Son ancêtre (ANCESTOR) donne le HANDLE de son parent.

@JL35
Ligne 44
Code:

item_add 50," Ancêtre Bouton 11 : " + str$(dll_call2("GetAncestor",hbouton11%,2))

Il n’y a rien d’incorrect là-dedans … à moins que USER32.DLL ne t’aime pas trop !  tongue

On peut tout simplement se passer de tout ça et faire :
Code:

message handle(parent(11))

Mais pourquoi faire simple quand on peut faire compliqué ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Yannick

avatar

Nombre de messages : 8074
Age : 47
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Sam 15 Juil 2017 - 14:52

Papydall méfies toi ! tu vas finir par obtenir la double nationalité.
lol!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 6257
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 16:43

Papydall,

1) mea culpa, je ne suis pas sous la bonne version de Editor, la mienne ne connaît pas parent() Embarassed

2) tu as corrigé une faute, mais pas l'autre, et donc je répète ( Very Happy )
Citation :
... pour voire s'afficher leur ancêtre.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5906
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 18:29

ERREUR !


Dernière édition par papydall le Sam 15 Juil 2017 - 18:38, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
papydall

avatar

Nombre de messages : 5906
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 18:33

Yannick a écrit:
Papydall méfies toi ! tu vas finir par obtenir la double nationalité.

Dans ma tête je fais partie de toutes les nationalités du monde. Wink


JL35 a écrit:
Papydall,

1) mea culpa, je ne suis pas sous la bonne version de Editor, la mienne ne connaît pas parent() Embarassed

2) tu as corrigé une faute, mais pas l'autre, et donc je répète ( Very Happy )
Citation :
   ... pour voire s'afficher leur ancêtre.

Il me faudra deux messages, VOIRE trois, pour corriger une phrase et ne pas confondre le verbe VOIR avec la conjonction VOIRE.
Je te demande, à toi, voire à d’autres d’aller à mon premier message pour voir que j’ai corrigé ma phrase.

Citation :
 je ne suis pas sous la bonne version de Editor, la mienne ne connaît pas parent()

Etait-elle bâtarde ?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
JL35



Nombre de messages : 6257
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: GetAncestor de la USER32.DLL   Sam 15 Juil 2017 - 19:33

Peut-être pas, mais en tout cas elle est orpheline !

Ceci dit, je vois que tu ouvres la voie à une nouvelle science: retracer l'arbre généalogique de tous les enfants Panoramic !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: GetAncestor de la USER32.DLL   

Revenir en haut Aller en bas
 
GetAncestor de la USER32.DLL
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: