Page 1 sur 1

[RESOLU]GadgetX pour la fenêtre principale

Publié : mar. 20/déc./2011 11:16
par Mesa
Je n'arrive pas à faire fonctionner ce code et surtout à avoir la position en X de la fenêtre principale.

J'ai plein d'erreur de toutes sortes.

Code : Tout sélectionner

Enumeration
  #Window_0
  #Window_1
  
  #StringGadget_0
  #StringGadget_1
  
EndEnumeration

Procedure openwindow_0()
 OpenWindow(0, 0, 0, 500, 614, "Fenêtre principale ", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered)
EndProcedure

openwindow_0()

Debug  GadgetX(#Window_0) ; position en X de la fenêtre NE MARCHE PAS

If OpenWindow(#Window_1, 0, 0, 100, 60, "Fenêtre secondaire ", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_MinimizeGadget | #PB_Window_TitleBar )
  StringGadget(#StringGadget_0,0,0,50,25,"x0=")
  StringGadget(#StringGadget_1,0,30,50,25,"y0=")
  
  x0=GadgetX(#Window_0)
  y0=GadgetY(#Window_0)

  SetGadgetText(#StringGadget_0, "x0="+Str(x0))
  SetGadgetText(#StringGadget_1, "x0="+Str(x0))
  
  Debug  GadgetX(#Window_0) ; position en X de la fenêtre principale NE MARCHE PAS
  Debug  GadgetY(#Window_0) ; position en X de la fenêtre principale NE MARCHE PAS
EndIf

 
 
 Repeat
event=WaitWindowEvent()
Until event= #PB_Event_CloseWindow
Une idée ?

Mesa.

Re: GadgetX pour la fenêtre principale

Publié : mar. 20/déc./2011 12:48
par Ulix

Code : Tout sélectionner


Enumeration
  #Window_0
  #Window_1
 
  #StringGadget_0
  #StringGadget_1
 
EndEnumeration



Procedure openwindow_0()
;OpenWindow(0, 0, 0, 500, 614, "Fenêtre principale ", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered)
OpenWindow(#Window_0, 0, 0, 500, 614, "Fenêtre principale ", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered)
EndProcedure

openwindow_0()


; Si c'est la position de la fenetre alors utilisé :  WindowX(....)
;Debug  GadgetX(#Window_0) ; position en X de la fenêtre NE MARCHE PAS
Debug WindowX(#Window_0) ; position en X de la fenêtre, là ça marche



If OpenWindow(#Window_1, 0, 0, 100, 60, "Fenêtre secondaire ", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_MinimizeGadget | #PB_Window_TitleBar )
  StringGadget(#StringGadget_0,0,0,50,25,"x0=")
  StringGadget(#StringGadget_1,0,30,50,25,"y0=")
 

;Ici c'est la position du gadget ??
; alors utilisé la constante #StringGadget_0
;  x0=GadgetX(#Window_0)
 ; y0=GadgetY(#Window_0)
 x0=GadgetX(#StringGadget_0) 	: Debug x0
 y0=GadgetY(#StringGadget_0)	: Debug y0

; si la position de la 2ème fenetre (apparement varaible utilise dans la 2ème fenetre)
; utilisé  WindowX(...)
x0=WindowX(#Window_0) 	: Debug x0
y0=WindowX(#Window_0)	: Debug y0


; Erreur dans les variables 
;  SetGadgetText(#StringGadget_0, "x0="+Str(x0))
;  SetGadgetText(#StringGadget_1, "x0="+Str(x0))

; plutot comme ça
  SetGadgetText(#StringGadget_0, "x0="+Str(x0))
  SetGadgetText(#StringGadget_1, "y0="+Str(y0))
 


; Si c'est la position de la fenetre alors utilisé :  WindowX(  constante fenetre....)
; Si c'est la position du gadget utilisé : 	GadgetX(  contante gadget...) 
;  Debug  GadgetX(#Window_0) ; position en X de la fenêtre principale NE MARCHE PAS
;  Debug  GadgetY(#Window_0) ; position en X de la fenêtre principale NE MARCHE PAS



EndIf



Repeat
event=WaitWindowEvent()
Until event= #PB_Event_CloseWindow




Le code demande a etre revu et mieux organisé :lol:
Correction vite fait pour; sans etre tester (je n'est pas PB sur ma bécane du travail) :oops:
A+

Re: GadgetX pour la fenêtre principale

Publié : mar. 20/déc./2011 16:18
par Mesa
ça marche. :D

Mesa.