Page 1 sur 1
gadgetImage et hide window PROBLEME
Publié : ven. 09/sept./2005 18:22
par Le psychopathe
Voilà j'ai fais un programme avec une image mais quand je dis hide window et que je fais réaffiche la fenêtre l'image a disparu. J'ai aussi détruit le gadget et refais avec image mais rien j'arrive pas à remettre une image.
Aidez moi sa me ****.

Publié : ven. 09/sept./2005 18:48
par LeCyb
Si je dis pas de connerie en utilisant un gadget image y'a un refresh automatique.
Publié : ven. 09/sept./2005 18:57
par nico
C'est à toi de faire en sorte que l'image réapparaisse si l'image n'est pas affiché par un gadget, c'est donc tout à fait normal.
Publié : ven. 09/sept./2005 19:03
par Le psychopathe
Dans ce cas dis moi commetn faire car j'ai tout essayé enfin tout ce que j'ai vu dans l'aide.
Publié : ven. 09/sept./2005 19:07
par nico
Il faut procéder au traitement du message #WM_PAINT, mais pour cela il est nécessaire d'utiliser un callback.
Publié : ven. 09/sept./2005 19:37
par Le psychopathe
Je ne connais pas les call back et tout sa. Bon s'y tu avas un exemple se serait sympa. Je vais chercher un peu.
++
Publié : ven. 09/sept./2005 21:06
par fweil
Deux options possibles, l'une par un callback qui réaffiche l'image, ce qui n'est pas une sinécure, la seconde insérer l'image dans un ImageGadget() comme le précise LeCyb ...
Code : Tout sélectionner
Enumeration
#Window_Main
#Image
#Gadget_Image
EndEnumeration
WindowWidth = 640
WindowHeight = 480
ImageWidth = WindowWidth
ImageHeight = WindowHeight
If OpenWindow(#Window_Main, 0, 0, WindowWidth, WindowHeight, #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)
ImageID = CreateImage(#Image, ImageWidth, ImageHeight)
StartDrawing(ImageOutput())
Box(0, 0, WindowWidth, WindowHeight, #Blue)
DrawingMode(1)
Locate(10, 10)
DrawText("This is an image")
StopDrawing()
If CreateGadgetList(WindowID(#Window_Main))
ImageGadget(#Gadget_Image, 0, 0, WindowWidth, WindowHeight, ImageID)
EndIf
Quit = #False
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = #True
Case #PB_Event_Menu
Select EventMenuID()
Case #PB_Shortcut_Escape
Quit = #True
EndSelect
EndSelect
Until Quit
EndIf
End
Publié : sam. 10/sept./2005 7:59
par Le psychopathe
Mon image est déjà dans un image gadget donc j'ai essayé de supprimé le gadget, ensuite de le refaire l'image revient pas. En fait quand je fais hidewindow ou que je redimenssionne la fenetre l'image disparait et je n'arrive pas à la réafficher.
Quelqu'un aurait un truc pour sa ?

Publié : sam. 10/sept./2005 8:25
par nico
T'as essayé de reproduire ce problème avec un code simple contenant seulement une fenêtre un un imagegadget?
Publié : sam. 10/sept./2005 11:29
par Le psychopathe
Avec comme gadget 1 seul gadget donc 1 image cela marche mais j'ai dans mon programme 6 gadget et celka ne marche pas comment faire ?
Publié : sam. 10/sept./2005 20:18
par nico
Ben toujours pareil , tu fais un code simple: une fenêtre et deux gadgets et tu regrdes ce qui se passe et ainsi de suite. Tu vérifies ainsi que ça ne vient pas des Gadgets et tu continues élément après élément pour déterminer l'erreur.