Page 1 sur 1

probleme avec les images...

Publié : mar. 15/nov./2005 8:35
par gadjet35
j'ai un probleme avec les images il n'y a rien qui marche dans mon code...
pouvez vous m'aider???

Code : Tout sélectionner

;- Window Constants
;
Enumeration
  #Window_0
EndEnumeration

;- MenuBar Constants
;
Enumeration
  #MenuBar_0
EndEnumeration

Enumeration
  #MENU_1
  #MENU_2
  #MENU_3
  #MENU_4
  #MENU_5
  #MENU_6
EndEnumeration

;- Gadget Constants
;
Enumeration
  #Image_0
  #Frame3D_0
  #Frame3D_1
  #Radio_0
  #Radio_1
  #Radio_2
  #Radio_3
  #Text_0
  #Text_1
  #Text_2
  #Text_3
  #Text_4
  #Button_1
  #Frame3D_2
  #Frame3D_3
  #Frame3D_4
  #Button_2
  #Button_3
  #Frame3D_5
  #String_0
  #Button_4
EndEnumeration

 Global Image0

CreateImage(Image0,720,610)

Procedure Open_Window_0()
  If OpenWindow(#Window_0, 0, 0, 1018, 705,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget, "Pro Designe  v 4.3")
    If CreateMenu(#MenuBar_0, WindowID())
      MenuTitle("Fichier")
      MenuItem(#MENU_1, "Ouvrir")
      MenuItem(#MENU_2, "Sauvegarder")
      MenuBar()
      MenuItem(#MENU_3, "Quitter")
      MenuTitle("Edition")
      MenuItem(#MENU_4, "Effacer le dessin en cour")
      MenuItem(#MENU_5, "Changer la couleur du text")
      MenuTitle("Info")
      MenuItem(#MENU_6, "L'auteur")
      EndIf

      If CreateGadgetList(WindowID())
        ImageGadget(#Image_0, 230, 50, 720, 610, Image0, #PB_Image_Border)
        Frame3DGadget(#Frame3D_0, 200, 30, 790, 650, "IMAGE")
        Frame3DGadget(#Frame3D_1, 20, 40, 170, 640, "DESSIN")
        OptionGadget(#Radio_0, 110, 90, 30, 30, "")
        OptionGadget(#Radio_1, 110, 140, 30, 30, "")
        OptionGadget(#Radio_2, 110, 190, 30, 30, "")
        OptionGadget(#Radio_3, 110, 240, 30, 30, "")
        TextGadget(#Text_0, 40, 100, 60, 30, "Main lever ", #PB_Text_Center)
        TextGadget(#Text_1, 40, 150, 60, 30, "Ligne", #PB_Text_Center)
        TextGadget(#Text_2, 40, 200, 60, 30, "Rectangle", #PB_Text_Center)
        TextGadget(#Text_3, 40, 250, 60, 30, "Cercle", #PB_Text_Center)
        TextGadget(#Text_4, 50, 310, 120, 30, Space(3)+"Aucune")
        ButtonGadget(#Button_1, 55, 350, 100, 30, "Changer")
        Frame3DGadget(#Frame3D_2, 30, 290, 150, 100, "Couleur")
        Frame3DGadget(#Frame3D_3, 30, 70, 140, 210, "Forme")
        Frame3DGadget(#Frame3D_4, 30, 410, 150, 120, "Dessiner")
        ButtonGadget(#Button_2, 50, 430, 110, 30, "Commencer")
        ButtonGadget(#Button_3, 50, 490, 110, 30, "Arreter")
        Frame3DGadget(#Frame3D_5, 30, 540, 150, 130, "Text")
        StringGadget(#String_0, 40, 570, 130, 30, "")
        ButtonGadget(#Button_4, 40, 620, 130, 30, "Ajouter", #PB_Button_Default | #PB_Button_Toggle)
      EndIf
    EndIf
EndProcedure

open_window_0()

If InitMouse() = 0
 End
EndIf

 Repeat
  Select WaitWindowEvent()
   Case #PB_EventMenu
    Select EventMenuID()
     Case #menu_1
      image$ = OpenFileRequester("ouvrir une image","","image|*.bmp;*.jpeg;*.jpg;*.dib;*.gif;*.png",0)
      StartDrawing(ImageOutput())
       LoadImage(image0,image$)
       DrawImage(image$,GadgetX(#image_0),GadgetY(#image_0))
      StopDrawing()
     Case #menu_2
      fichier$ = OpenFileRequester("sauver","","image|*.bmp;*.jpeg;*.jpg;*.dib;*.gif;*.png",0)
      CreateFile(0,fichier$)
       SaveImage(#image_0,fichier$)
      CloseFile(0)
     Case #menu_3
      End
     Case #menu_4
      UseImage(image0)
     Case #menu_5
      couleur_text = ColorRequester()
     Case #menu_6
      MessageRequester("Info","l'auteur :"+Chr(13)+"prenom :   ??? (gadjet35)"+Chr(13)+"nom :   ???")
    EndSelect
   Case #PB_EventGadget
    Select EventGadgetID()
     Case #button_1
      couleur = ColorRequester()
      SetGadgetText(#text_4,Space(3)+Str(couleur))
     Case #button_2
      If #radio_0
       If WaitWindowEvent()=#WM_LBUTTONDOWN
        StartDrawing(ImageOutput())
         Repeat
          point_x = DesktopMouseX() - GadgetX(#image_0)
          point_y = DesktopMouseY() - GadgetY(#image_0)
          Plot(point_x,point_y,couleur)
         Until WaitWindowEvent()=#WM_LBUTTONUP
        StopDrawing()
       EndIf
      EndIf
      If #radio_1
       If WaitWindowEvent()=#WM_LBUTTONDOWN
         ligne1_x = DesktopMouseX() - GadgetX(#image_0)
         ligne1_y = DesktopMouseY() - GadgetY(#image_0)
       EndIf
       If WaitWindowEvent()=#WM_LBUTTONDOWN
         ligne2_x = DesktopMouseX() - GadgetX(#image_0)
         ligne2_y = DesktopMouseY() - GadgetY(#image_0)
       EndIf
        StartDrawing(ImageOutput())
         LineXY(ligne1_x,ligne1_y,ligne2_x,ligne2_y,couleur)
        StopDrawing()
      EndIf
      If #radio_2
       If WaitWindowEvent()=#WM_LBUTTONDOWN
        centre_x = DesktopMouseX() - GadgetX(#image_0)
        centre_y = DesktopMouseY() - GadgetY(#image_0)
       EndIf
       If WaitWindowEvent()=#WM_LBUTTONDOWN
        rayon_x = DesktopMouseX() - GadgetX(#image_0)
        rayon_y = DesktopMouseY() - GadgetY(#image_0)
       EndIf
       StartDrawing(ImageOutput())
        Circle(centre_x,centre_y,(rayon_x-centre_x)+(rayon_y-centre_y),couleur)
       StopDrawing()
      EndIf
      If #radio_3
       If WaitWindowEvent()=#WM_LBUTTONDOWN
        haut_x = DesktopMouseX() - GadgetX(#image_0)
        haut_y = DesktopMouseY() - GadgetY(#image_0)
       EndIf
       If WaitWindowEvent()=#WM_LBUTTONDOWN
        longeur = DesktopMouseX() - GadgetX(#image_0)
        largeur = DesktopMouseY() - GadgetY(#image_0)
       EndIf
       StartDrawing(ImageOutput())
        Box(haut_x,haut_y,(longeur-haut_x)+(largeur-haut_y),couleur)
       StopDrawing()
      EndIf
     Case #button_4
      text$ = GetGadgetText(#String_0)
      If WaitWindowEvent()=#WM_LBUTTONDOWN
       text_x = DesktopMouseX() - GadgetX(#image_0)
       text_y = DesktopMouseY() - GadgetY(#image_0)
      EndIf
       StartDrawing(ImageOutput())
        Locate(text_x,text_y)
        DrawText(text$)
       StopDrawing()
    EndSelect
   Case #PB_EventCloseWindow
    quit = 1
  EndSelect
 Until quit = 1
merci d'avance de votre aide!
logiquement sa devrai donner quelque chose pour dessiner.[/code]

Publié : sam. 19/nov./2005 13:43
par Gillou
Salut, je t'ai corrigé juste l'affichage des images après su tu veux de l'aide pour le reste, n'hésites pas :wink:

Correction :
Chargement des plugins de lecture
chargement du gadgetimage
menu ouvrir



;- Window Constants
;
Enumeration
#Window_0
EndEnumeration

;- MenuBar Constants
;
Enumeration
#MenuBar_0
EndEnumeration

Enumeration
#MENU_1
#MENU_2
#MENU_3
#MENU_4
#MENU_5
#MENU_6
EndEnumeration

;- Gadget Constants
;
Enumeration
#Image_0
#Frame3D_0
#Frame3D_1
#Radio_0
#Radio_1
#Radio_2
#Radio_3
#Text_0
#Text_1
#Text_2
#Text_3
#Text_4
#Button_1
#Frame3D_2
#Frame3D_3
#Frame3D_4
#Button_2
#Button_3
#Frame3D_5
#String_0
#Button_4
EndEnumeration

UseJPEGImageDecoder ()
UsePNGImageDecoder ()
UseTGAImageDecoder ()
UseTIFFImageDecoder ()

Global Image0 , Image1
Image1=1
CreateImage (Image0,720,610)

Procedure Open_Window_0()
If OpenWindow ( #Window_0 , 0, 0, 1018, 705, #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget , "Pro Designe v 4.3" )
If CreateMenu ( #MenuBar_0 , WindowID ())
MenuTitle ( "Fichier" )
MenuItem ( #MENU_1 , "Ouvrir" )
MenuItem ( #MENU_2 , "Sauvegarder" )
MenuBar ()
MenuItem ( #MENU_3 , "Quitter" )
MenuTitle ( "Edition" )
MenuItem ( #MENU_4 , "Effacer le dessin en cour" )
MenuItem ( #MENU_5 , "Changer la couleur du text" )
MenuTitle ( "Info" )
MenuItem ( #MENU_6 , "L'auteur" )
EndIf

If CreateGadgetList ( WindowID ())
UseImage (Image0)
ImageGadget ( #Image_0 , 230, 50, 720, 610, ImageID (), #PB_Image_Border )
Frame3DGadget ( #Frame3D_0 , 200, 30, 790, 650, "IMAGE" )
Frame3DGadget ( #Frame3D_1 , 20, 40, 170, 640, "DESSIN" )
OptionGadget ( #Radio_0 , 110, 90, 30, 30, "" )
OptionGadget ( #Radio_1 , 110, 140, 30, 30, "" )
OptionGadget ( #Radio_2 , 110, 190, 30, 30, "" )
OptionGadget ( #Radio_3 , 110, 240, 30, 30, "" )
TextGadget ( #Text_0 , 40, 100, 60, 30, "Main lever " , #PB_Text_Center )
TextGadget ( #Text_1 , 40, 150, 60, 30, "Ligne" , #PB_Text_Center )
TextGadget ( #Text_2 , 40, 200, 60, 30, "Rectangle" , #PB_Text_Center )
TextGadget ( #Text_3 , 40, 250, 60, 30, "Cercle" , #PB_Text_Center )
TextGadget ( #Text_4 , 50, 310, 120, 30, Space (3)+ "Aucune" )
ButtonGadget ( #Button_1 , 55, 350, 100, 30, "Changer" )
Frame3DGadget ( #Frame3D_2 , 30, 290, 150, 100, "Couleur" )
Frame3DGadget ( #Frame3D_3 , 30, 70, 140, 210, "Forme" )
Frame3DGadget ( #Frame3D_4 , 30, 410, 150, 120, "Dessiner" )
ButtonGadget ( #Button_2 , 50, 430, 110, 30, "Commencer" )
ButtonGadget ( #Button_3 , 50, 490, 110, 30, "Arreter" )
Frame3DGadget ( #Frame3D_5 , 30, 540, 150, 130, "Text" )
StringGadget ( #String_0 , 40, 570, 130, 30, "" )
ButtonGadget ( #Button_4 , 40, 620, 130, 30, "Ajouter" , #PB_Button_Default | #PB_Button_Toggle )
EndIf
EndIf
EndProcedure

open_window_0()

If InitMouse () = 0
End
EndIf

Repeat
Select WaitWindowEvent ()
Case #PB_EventMenu
Select EventMenuID ()
Case #menu_1
image$ = OpenFileRequester ( "ouvrir une image" , "" , "image|*.bmp;*.jpeg;*.jpg;*.png;*.tga;*.tiff" ,0)
If LoadImage (Image1,image$)
UseImage (Image0)
StartDrawing ( ImageOutput ())
UseImage (Image1)
DrawImage ( ImageID (),0,0, GadgetWidth ( #image_0 ), GadgetHeight ( #image_0 ))
StopDrawing ()
UseImage (Image0)
SetGadgetState ( #Image_0 , ImageID ())
EndIf
Case #menu_2
fichier$ = SaveFileRequester ( "sauver" , "" , "image|*.bmp;*.jpeg;*.jpg;*.png" ,0)
CreateFile (0,fichier$)
SaveImage ( #image_0 ,fichier$)
CloseFile (0)
Case #menu_3
End
Case #menu_4
UseImage (image0)
Case #menu_5
couleur_text = ColorRequester ()
Case #menu_6
MessageRequester ( "Info" , "l'auteur :" + Chr (13)+ "prenom : ??? (gadjet35)" + Chr (13)+ "nom : ???" )
EndSelect
Case #PB_EventGadget
Select EventGadgetID ()
Case #button_1
couleur = ColorRequester ()
SetGadgetText ( #text_4 , Space (3)+ Str (couleur))
Case #button_2
If #radio_0
If WaitWindowEvent ()= #WM_LBUTTONDOWN
StartDrawing ( ImageOutput ())
Repeat
point_x = DesktopMouseX () - GadgetX ( #image_0 )
point_y = DesktopMouseY () - GadgetY ( #image_0 )
Plot (point_x,point_y,couleur)
Until WaitWindowEvent ()= #WM_LBUTTONUP
StopDrawing ()
SetGadgetState ( #Image_0 , ImageID ())
EndIf
EndIf
If #radio_1
If WaitWindowEvent ()= #WM_LBUTTONDOWN
ligne1_x = DesktopMouseX () - GadgetX ( #image_0 )
ligne1_y = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
If WaitWindowEvent ()= #WM_LBUTTONDOWN
ligne2_x = DesktopMouseX () - GadgetX ( #image_0 )
ligne2_y = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
StartDrawing ( ImageOutput ())
LineXY (ligne1_x,ligne1_y,ligne2_x,ligne2_y,couleur)
StopDrawing ()
SetGadgetState ( #Image_0 , ImageID ())
EndIf
If #radio_2
If WaitWindowEvent ()= #WM_LBUTTONDOWN
centre_x = DesktopMouseX () - GadgetX ( #image_0 )
centre_y = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
If WaitWindowEvent ()= #WM_LBUTTONDOWN
rayon_x = DesktopMouseX () - GadgetX ( #image_0 )
rayon_y = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
StartDrawing ( ImageOutput ())
Circle (centre_x,centre_y,(rayon_x-centre_x)+(rayon_y-centre_y),couleur)
StopDrawing ()
SetGadgetState ( #Image_0 , ImageID ())
EndIf
If #radio_3
If WaitWindowEvent ()= #WM_LBUTTONDOWN
haut_x = DesktopMouseX () - GadgetX ( #image_0 )
haut_y = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
If WaitWindowEvent ()= #WM_LBUTTONDOWN
longeur = DesktopMouseX () - GadgetX ( #image_0 )
largeur = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
StartDrawing ( ImageOutput ())
Box (haut_x,haut_y,(longeur-haut_x)+(largeur-haut_y),couleur)
StopDrawing ()
SetGadgetState ( #Image_0 , ImageID ())
EndIf
Case #button_4
text$ = GetGadgetText ( #String_0 )
If WaitWindowEvent ()= #WM_LBUTTONDOWN
text_x = DesktopMouseX () - GadgetX ( #image_0 )
text_y = DesktopMouseY () - GadgetY ( #image_0 )
EndIf
StartDrawing ( ImageOutput ())
Locate (text_x,text_y)
DrawText (text$)
StopDrawing ()
SetGadgetState ( #Image_0 , ImageID ())
EndSelect
Case #PB_EventCloseWindow
quit = 1
EndSelect
Until quit = 1


Publié : sam. 19/nov./2005 19:05
par gadjet35
ok merci pour ton aide !!!