Page 1 sur 1

interfacage fonctions C et PB avec l'API win32.

Publié : lun. 30/avr./2007 17:26
par minirop
bonjour,
j'ai quelques questions à propos des variables PB à passer à des fonction C utilisant l'API win32 :
1/ que faut il envoyer pour récupérer l'instance de l'application (de type HINSTANCE) ?
2/ pour récupérer le handle de la fenêtre (de type HWND) ? WindowID() ?

merci ;)

Re: interfacage fonctions C et PB avec l'API win32.

Publié : lun. 30/avr./2007 17:46
par Anonyme2
minirop a écrit :bonjour,
j'ai quelques questions à propos des variables PB à passer à des fonction C utilisant l'API win32 :
1/ que faut il envoyer pour récupérer l'instance de l'application (de type HINSTANCE) ?
il me semble qu'il existe une variable PB, faudrait chercher mais avec le code suivant ça devrait aller

Code : Tout sélectionner

hInstance = GetModuleHandle_(#Null)
minirop a écrit :2/ pour récupérer le handle de la fenêtre (de type HWND) ? WindowID() ?

merci ;)
oui

Ca marche aussi si on écrit

Code : Tout sélectionner

HWND = Openwindow(...)

Re: interfacage fonctions C et PB avec l'API win32.

Publié : lun. 30/avr./2007 17:50
par minirop
Denis a écrit :Ca marche aussi si on écrit

Code : Tout sélectionner

HWND = Openwindow(...)
c'est soit :
handle.l = OpenWindow(#PB_Any,...)
soit :
OpenWindow(0,...)
handle. l =WindowID(0)
??
ou alors dans tous les cas faut utiliser WindowID ?

Publié : lun. 30/avr./2007 18:10
par Anonyme2
Ca

Code : Tout sélectionner

handle.l = OpenWindow(#PB_Any,...) 
ca ne marche pas avec #PB_Any

Je l'avais oublié celui là, je l'utilise tellement pas :D

Ca ca marche

Code : Tout sélectionner

handle.l = OpenWindow(0,...) 

Publié : lun. 30/avr./2007 18:22
par minirop
je comprends mieux maintenant !
merci ;)

Publié : lun. 30/avr./2007 19:38
par Flype
Juste pour préciser, ca fonctionne aussi avec #PB_Any mais en procédant comme çà :

id.l = OpenWindow(#PB_Any,...)

handle.l = WindowId(id)


Et on procède de la meme manière avec beaucoup d'objets dont les Fenêtres, les Gadgets, StatusBars, Menus, Fonts, ToolBars, Fichiers...

PureBasic est assez homogène pour çà, et c'est ce qui le rends très proche de l'OS hôte et/ou du C (mais pas le C++).