Comment attacher une fenêtre à une autre
ex: 1ère fenêtre x=10, y=10
ex: 2ème fenêtre x=10, y=10 le x, y correspond à la position de la
première fenêtre .
Merci pour vos réponses .
Fenêtres
si jai bien compris tu veut que de fenetre soit coler et que mem si on bouge la premier ou on la redimensionne elle reste a coter
si c sa il sufit cree test deux fentre apre stu met dans la boucle
posx=position x window1,+largeur de la window
posy=position y window1
position window (window2,posx,posy)
ce ne sont pas les bon code mais c le principe
si c sa il sufit cree test deux fentre apre stu met dans la boucle
posx=position x window1,+largeur de la window
posy=position y window1
position window (window2,posx,posy)
ce ne sont pas les bon code mais c le principe
Cagou-77,
Ce code montre comment coller une fenêtre annexe à une fenêtre principale en gérant les évènements de changement de taille et de position de la fenêtre principale.
Pour la mise en oeuvre dans un projet réel, il faut prendre soin de gérer les changements de fenêtres dans la boucle d'évènement (UseWindow() et ActivateWindow()) si la fenêtre annexe est destinée à gérer des gadgets par exemple.
Slts
Ce code montre comment coller une fenêtre annexe à une fenêtre principale en gérant les évènements de changement de taille et de position de la fenêtre principale.
Pour la mise en oeuvre dans un projet réel, il faut prendre soin de gérer les changements de fenêtres dans la boucle d'évènement (UseWindow() et ActivateWindow()) si la fenêtre annexe est destinée à gérer des gadgets par exemple.
Code : Tout sélectionner
Enumeration
#Window_Main
#Window_Tool
EndEnumeration
Procedure Refresh_Tool_Window_Position()
WindowX_Main = WindowX()
WindowY_Main = WindowY()
WindowWidth_Main = WindowWidth()
WindowHeight_Main = WindowHeight()
WindowWidth_Tool = 200
WindowHeight_Tool = WindowHeight_Main
WindowX_Tool = WindowX_Main + WindowWidth_Main + 8
WindowY_Tool = WindowY_Main
UseWindow(#Window_Tool)
ResizeWindow(WindowWidth_Tool, WindowHeight_Tool)
MoveWindow(WindowX_Tool, WindowY_Tool)
UseWindow(#Window_Main)
ActivateWindow()
EndProcedure
WindowWidth_Main = 640
WindowHeight_Main = 480
WindowWidth_Tool = 200
WindowHeight_Tool = WindowHeight_Main
If OpenWindow(#Window_Main, 0, 0, WindowWidth_Main, WindowHeight_Main, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered, "MyWindow")
AddKeyboardShortcut(#Window_Main, #PB_Shortcut_Escape, #PB_Shortcut_Escape)
If CreateGadgetList(WindowID(#Window_Main))
EndIf
WindowX_Main = WindowX()
WindowY_Main = WindowY()
WindowX_Tool = WindowX_Main + WindowWidth_Main + 8
If OpenWindow(#Window_Tool, WindowX_Tool, WindowY_Main, WindowWidth_Tool, WindowHeight_Tool, #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_TitleBar, "Tool window")
EndIf
UseWindow(#Window_Main)
ActivateWindow()
Quit = #False
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = #True
Case #PB_Event_Menu
Select EventMenuID()
Case #PB_Shortcut_Escape
Quit = #True
EndSelect
Case #PB_Event_SizeWindow
Refresh_Tool_Window_Position()
Case #PB_Event_MoveWindow
Refresh_Tool_Window_Position()
EndSelect
Until Quit
EndIf
End
Mon avatar reproduit l'image de 4x1.8m présentée au 'Salon international du meuble de Paris' en janvier 2004, dans l'exposition 'Shades' réunisant 22 créateurs autour de Matt Sindall. L'original est un stratifié en 150 dpi.