faire un apercu et envoyer un file sur un ftp

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
scaraber
Messages : 362
Inscription : ven. 15/juil./2005 17:32

faire un apercu et envoyer un file sur un ftp

Message par scaraber »

salut
voial j'ai purebasic depuis 3 jour et j'ai fait sa
Menu(36 Ko)
c un petit programe pour créé des perso (aucun bug) mais il me manque un apercu pour metre le perso en 3D pour que l'on voit ce qu'on choisi
et j'aimerai envoyer le fichier qu'il a créé (ou une copie) sur un ftp comment faires
merci d'avance de vos reponce[/code]
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

pour la 3D tu veux utiliser les commandes purebasic ou un moteur externe ?
Toujours est-il que tu as juste à ajouter un OpenWindowedScreen() quelque part sur ta fenêtre et d'utiliser les commandes d'affichage 3D .

L'affichage 3D se fera dans OpenWindowedScreen().

Pour le FTP il y a pas mal d'exemple un peu partout , Cherche Drop Upload
de Zapman par exemple , ou d'autres bouts de code sur CodeArchive (PureArea.net)
scaraber
Messages : 362
Inscription : ven. 15/juil./2005 17:32

Message par scaraber »

ok merci de ton aide
scaraber
Messages : 362
Inscription : ven. 15/juil./2005 17:32

Message par scaraber »

j'ai essayer de metre
OpenWindowedScreen(WindowID,200,130,110,180, 0,190,40)
mais sa marche aps a plante a cette ligne
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

ce serait plus facile de t'aider si tu nous montrais un bout de code, qu'on comprenne bien ce que tu as fait .
OpenWindowedScreen(WindowID, x, y, Width, Height, AutoStretch, RightOffset, BottomOffset)

Je ferais déjà un truc simple pour commencer
OpenWindowedScreen(WindowID(), 0, 0, 200, 200, 0,0, 0)
scaraber
Messages : 362
Inscription : ven. 15/juil./2005 17:32

Message par scaraber »

voici mon coode

Code : Tout sélectionner

Enumeration
  #Panel_0
  #Button_0
  #Button_1
  #Button_2
  #Radio_0
  #Radio_1
  #Radio_2
  #Radio_3
  #Radio_4
  #Radio_5
  #Radio_6
  #Radio_7
  #Radio_8
  #Radio_9
  #Frame3D_0
  #Frame3D_1
  #Frame3D_2
  #Frame3D_3
  #Frame3D_4
  #Frame3D_5
  #Frame3D_6
  #Frame3D_7
  #Frame3D_8
  #String_0
  #String_1
  #ProgressBar_0
  #Frame3D_9
  #String_3
  #String_6
  #String_8
  #Listview_0
  #Listview_1
  #Frame3D_13
  #Frame3D_14
  #Frame3D_11
  #Text_2
  #String_10
  #Frame3D_15
  #Frame3D_16
  #Frame3D_17
  #Frame3D_18
  #Frame3D_19
  #Frame3D_20
  #Text_4
  #Text_5
  #Text_6
  #Text_7
  #Text_8
  #Frame3D_21
  #Frame3D_22
  #Frame3D_23
  #Text_11
  #Text_12
  #Text_13
  #Frame3D_24
  #Text_15
  #Frame3D_10
  #Frame3D_12
  #Text_10
  #Button_3
  #Text_3
  #sprite
  #Button_4
  #Button_5
  #Button_6
  #Button_7
  #Button_8
  #Button_9
  #Button_10
  #Button_11
  #Frame3D_26
  #Text_16
  #Frame3D_27
  #Button_27
EndEnumeration

If OpenWindow(0, 200, 200, 500, 350, #PB_Window_ScreenCentered|#PB_Window_SystemMenu, "Menu TEOK")

If CreateGadgetList(WindowID())
menu:      
      ;- Panel0
PanelGadget(#Panel_0, 0, 10, 490, 330)
      AddGadgetItem(#Panel_0, -1, "Personalisation du perso")
      ButtonGadget(#Button_0, 428, 278, 50, 20, "Valider")
      ButtonGadget(#Button_1, 428, 248, 50, 20, "Reset")
      ButtonGadget(#Button_2, 428, 218, 50, 20, "Anuler")
      OptionGadget(#Radio_0, 78, 108, 20, 20, "")
      OptionGadget(#Radio_1, 78, 148, 20, 20, "")
      OptionGadget(#Radio_2, 78, 188, 20, 20, "")
      OptionGadget(#Radio_3, 78, 228, 20, 20, "")
      OptionGadget(#Radio_4, 78, 268, 20, 20, "")
      OptionGadget(#Radio_5, 138, 268, 20, 20, "")
      OptionGadget(#Radio_6, 138, 108, 20, 20, "")
      OptionGadget(#Radio_7, 138, 148, 20, 20, "")
      OptionGadget(#Radio_8, 138, 188, 20, 20, "")
      OptionGadget(#Radio_9, 138, 228, 20, 20, "")
      Frame3DGadget(#Frame3D_26, 188, 78, 130, 210, "apercu")
      Frame3DGadget(#Frame3D_0, 8, 98, 170, 40, "Elfe")
      Frame3DGadget(#Frame3D_1, 8, 138, 170, 40, "Orc")
      Frame3DGadget(#Frame3D_2, 8, 178, 170, 40, "Nain")
      Frame3DGadget(#Frame3D_3, 8, 218, 170, 40, "Humain")
      Frame3DGadget(#Frame3D_4, 8, 258, 170, 40, "Gnome")
      Frame3DGadget(#Frame3D_5, 58, 78, 50, 220, "Femmes")
      Frame3DGadget(#Frame3D_6, 118, 78, 50, 220, "Homme")
      Frame3DGadget(#Frame3D_7, 38, 18, 90, 50, "NOM")
      Frame3DGadget(#Frame3D_8, 128, 18, 90, 50, "Prénoms")
      StringGadget(#String_0, 48, 38, 70, 20, "")
      SendMessage_(GadgetID(#String_0), #EM_LIMITTEXT, 20, 0)
      StringGadget(#String_1, 138, 38, 70, 20, "")
      SendMessage_(GadgetID(#String_0), #EM_LIMITTEXT, 20, 0)
      ProgressBarGadget(#ProgressBar_0, 188, 288, 190, 10, 0, 10, #PB_ProgressBar_Smooth)
      Frame3DGadget(#Frame3D_9, 308, 18, 170, 50, "date de naissance (JJ/MM/AAA)")
      StringGadget(#String_3, 228, 38, 70, 20, "", #PB_String_Password)
      SendMessage_(GadgetID(#String_3), #EM_LIMITTEXT, 20, 0)
      StringGadget(#String_6, 318, 38, 40, 20, "01", #PB_String_Numeric)
      SendMessage_(GadgetID(#String_6), #EM_LIMITTEXT, 2, 0)
      StringGadget(#String_8, 378, 38, 40, 20, "01", #PB_String_Numeric)
      SendMessage_(GadgetID(#String_8), #EM_LIMITTEXT, 2, 0)
      Frame3DGadget(#Frame3D_11, 218, 18, 90, 50, "Mot De Passe")
      TextGadget(#Text_2, 438, 38, 40, 20, "956")
      StringGadget(#String_10, 338, 98, 130, 20, "")
      Frame3DGadget(#Frame3D_15, 328, 78, 150, 50, "description")
      Frame3DGadget(#Frame3D_27, 188, 78, 130, 21, "apercu")
      AddGadgetItem(#Panel_0, -1, "Métier | Classe")
      ListViewGadget(#Listview_1, 308, 78, 140, 180)
       AddGadgetItem (#Listview_1,-1,"Barbarre")       
       AddGadgetItem (#Listview_1,-1,"Chasseur")
       AddGadgetItem (#Listview_1,-1,"Druide")
       AddGadgetItem (#Listview_1,-1,"Guerrier")       
       AddGadgetItem (#Listview_1,-1,"Voleur")
      ListViewGadget(#Listview_0, 58, 78, 140, 180)
       AddGadgetItem (#Listview_0,-1,"Cuisinier")      
       AddGadgetItem (#Listview_0,-1,"Forgeron")     
       AddGadgetItem (#Listview_0,-1,"Guerrier")
       AddGadgetItem (#Listview_0,-1,"Herboriste")          
       AddGadgetItem (#Listview_0,-1,"Magicien") 
       AddGadgetItem (#Listview_0,-1,"Menuisier")       
       AddGadgetItem (#Listview_0,-1,"Mineur")             
      Frame3DGadget(#Frame3D_13, 48, 48, 160, 220, "Métier")
      Frame3DGadget(#Frame3D_14, 298, 48, 160, 220, "Classe")
      AddGadgetItem(#Panel_0, 3, "Caractéristique")
      Frame3DGadget(#Frame3D_16, 38, 38, 80, 50, "Force")
      Frame3DGadget(#Frame3D_17, 38, 98, 80, 50, "Agiliter")
      Frame3DGadget(#Frame3D_18, 38, 158, 80, 50, "Intéligence")
      Frame3DGadget(#Frame3D_19, 338, 248, 80, 50, "Endurence")
      Frame3DGadget(#Frame3D_20, 38, 218, 80, 50, "Déxtériter")
      TextGadget(#Text_4, 48, 58, 50, 20, "15")
      TextGadget(#Text_5, 48, 118, 50, 20, "15")
      TextGadget(#Text_6, 48, 178, 50, 20, "15")
      TextGadget(#Text_7, 348, 268, 60, 20, "3500")
      TextGadget(#Text_8, 48, 238, 60, 20, "15")
      Frame3DGadget(#Frame3D_21, 338, 8, 80, 50, "Vie")
      Frame3DGadget(#Frame3D_22, 338, 68, 80, 50, "Magie")
      Frame3DGadget(#Frame3D_23, 338, 128, 80, 50, "Attaque")
      TextGadget(#Text_11, 348, 28, 60, 20, "15")
      TextGadget(#Text_12, 348, 88, 60, 20, "15")
      TextGadget(#Text_13, 348, 148, 60, 20, "15")
      Frame3DGadget(#Frame3D_24, 338, 188, 80, 50, "Déffence")
      TextGadget(#Text_15, 348, 208, 60, 20, "15")
      ButtonGadget(#Button_4, 128, 48, 40, 20, "+")
      ButtonGadget(#Button_5, 128, 68, 40, 20, "-")
      ButtonGadget(#Button_6, 128, 108, 40, 20, "+")
      ButtonGadget(#Button_7, 128, 128, 40, 20, "-")
      ButtonGadget(#Button_8, 128, 168, 40, 20, "+")
      ButtonGadget(#Button_9, 128, 188, 40, 20, "-")
      ButtonGadget(#Button_10, 128, 228, 40, 20, "+")
      ButtonGadget(#Button_11, 128, 248, 40, 20, "-")
      Frame3DGadget(#Frame3D_26, 188, 18, 80, 50, "point restant")
      TextGadget(#Text_16, 198, 38, 60, 20, "20")
int=15
agi=15
force=15
dex=15
endu=3500
vie=15
magie=15
deff=15
att=15
pr=20

    EndIf
    WindowID = WindowID() 
OpenWindowedScreen(WindowID(), 0, 0, 200, 200, 0,0, 0)
Repeat 
 
endu$=Str (endu)
vie$=Str (vie)
deff$=Str (deff)
att$=Str (att)
magie$=Str (magie)
pr$=Str (pr)
TextGadget(#Text_7, 348, 268, 60, 20, endu$)
TextGadget(#Text_11, 348, 28, 60, 20, vie$)
TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
TextGadget(#Text_13, 348, 148, 60, 20, att$)
TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
TextGadget(#Text_16, 198, 38, 60, 20, pr$)  
  
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_4
          If pr >0
          force=force+1
          endu=endu+100
          magie=magie+0
          att=att+2
          deff=deff+0
          vie=vie+1
          pr=pr-1
          endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
           force$=Str (force)     
           TextGadget(#Text_4, 48, 58, 50, 20, force$) 
           TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)   
            Repeat    
            Until WaitWindowEvent () = #PB_Event_Gadget   
          EndIf 
        Default
      EndSelect
      
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_5
         If force>15
          force=force-1
          endu=endu-100
          magie=magie-0
          att=att-2
          deff=deff-0
          vie=vie-1
          pr=pr+1
          endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
          force$=Str (force)      
          TextGadget(#Text_4, 48, 58, 50, 20, force$) 
           TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)            
          Repeat    
          Until WaitWindowEvent () = #PB_Event_Gadget   
        EndIf 
        Default
      EndSelect
  
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_6
        If pr >0
          agi=agi+1
          endu=endu+200
          deff=deff+2
          vie=vie+2
          pr=pr-1
          endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
          agi$=Str (agi)      
          TextGadget(#Text_5, 48, 118, 50, 20, agi$) 
          TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)           
          Repeat    
          Until WaitWindowEvent () = #PB_Event_Gadget      
           EndIf
        Default
      EndSelect
     
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_7
        If agi>15
          agi=agi-1
          endu=endu-200
          magie=magie-0
          deff=deff-2
          vie=vie-2
          pr=pr+1
          endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
          agi$=Str (agi)      
          TextGadget(#Text_5,48, 118 ,50, 20, agi$)  
          TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)          
          Repeat    
          Until WaitWindowEvent () = #PB_Event_Gadget       
      EndIf
        Default
      EndSelect
     
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_8
        If pr >0
          endu=endu+100
          magie=magie+3
          att=att+1
          deff=deff+1
          vie=vie+1
          int=int+1
          pr=pr-1
          endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
          int$=Str (int)      
          TextGadget(#Text_6, 48, 178, 50, 20, int$)  
          TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)    
          Repeat 
          Until WaitWindowEvent () = #PB_Event_Gadget  
            EndIf        
        Default
      EndSelect
 
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
       Case #Button_9
       If int>15
        endu=endu-0
        magie=magie-3
        att=att-1
        deff=deff-1
        vie=vie-1
        pr=pr+1
        int=int-1
        endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
        int$=Str (int)      
        TextGadget(#Text_6, 48, 178, 50, 20, int$)
        TextGadget(#Text_7, 348, 268, 60, 20, endu$)
        TextGadget(#Text_11, 348, 28, 60, 20, vie$)
        TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
        TextGadget(#Text_13, 348, 148, 60, 20, att$)
        TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
        TextGadget(#Text_16, 198, 38, 60, 20, pr$)   
        Repeat    
        Until WaitWindowEvent () = #PB_Event_Gadget  
     EndIf 
      Default
    EndSelect  
    
  event=WindowEvent()
   Gadget = EventGadgetID()
     Select Gadget
       Case #Button_10
       If pr >0
        endu=endu+100
        magie=magie+2
        att=att+0
        deff=deff+2
        vie=vie+0
        dex=dex+1
        pr=pr-1
        endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
        dex$=Str (dex)  
        TextGadget(#Text_8, 48, 238, 60, 20, dex$)   
        TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)  
        Repeat    
        Until WaitWindowEvent () = #PB_Event_Gadget   
       EndIf 
       Default
    EndSelect 
    
   event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_11
          If dex > 15
          dex=dex-1
          endu=endu-100
          magie=magie-2
          att=att-0
          deff=deff-2
          vie=vie-0
          pr=pr+1
          endu$=Str (endu)
          vie$=Str (vie)
           deff$=Str (deff)
           att$=Str (att)
           magie$=Str (magie)
           pr$=Str (pr)
          dex$=Str (dex)  
          TextGadget(#Text_8, 48, 238, 60, 20, dex$) 
          TextGadget(#Text_7, 348, 268, 60, 20, endu$)
           TextGadget(#Text_11, 348, 28, 60, 20, vie$)
           TextGadget(#Text_12, 348, 88, 60, 20, Magie$)
           TextGadget(#Text_13, 348, 148, 60, 20, att$)
           TextGadget(#Text_15, 348, 208, 60, 20, deff$) 
           TextGadget(#Text_16, 198, 38, 60, 20, pr$)  
          Repeat    
          Until WaitWindowEvent () = #PB_Event_Gadget  
        EndIf
        Default
      EndSelect
    
    
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
        Case #Button_2
        End 
        Default
      EndSelect
 
  event=WindowEvent()
    Gadget = EventGadgetID()
      Select Gadget
       Case #Button_1
        Goto menu
       Default
      EndSelect 
         
  event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
      Case #Button_0
       nom$ = GetGadgetText(#String_0)
       prenom$ = GetGadgetText(#String_1)    
       mdp$ = GetGadgetText(#String_3)
       jour$ = GetGadgetText(#String_6)
       mois$ = GetGadgetText(#String_8)
       description$ = GetGadgetText(#String_10)
       metier$ = GetGadgetText(#Listview_0)
       classe$= GetGadgetText(#Listview_1)
       lvl$="1"
       Resultat0 = GetGadgetState(#Radio_0)
       Resultat1 = GetGadgetState(#Radio_1)
       Resultat2 = GetGadgetState(#Radio_2)
       Resultat3 = GetGadgetState(#Radio_3)
       Resultat4 = GetGadgetState(#Radio_4)
       Resultat5 = GetGadgetState(#Radio_5)
       Resultat6 = GetGadgetState(#Radio_6)
       Resultat7 = GetGadgetState(#Radio_7)
       Resultat8 = GetGadgetState(#Radio_8)
       Resultat9 = GetGadgetState(#Radio_9)
       nomfichier$ =(nom$+prenom$+".teok")           
       Resultat0$=StrU(Resultat0,#Byte)
       Resultat1$=StrU(Resultat1,#Byte)
       Resultat2$=StrU(Resultat2,#Byte)
       Resultat3$=StrU(Resultat3,#Byte)
       Resultat4$=StrU(Resultat4,#Byte)
       Resultat5$=StrU(Resultat5,#Byte)
       Resultat6$=StrU(Resultat6,#Byte)
       Resultat7$=StrU(Resultat7,#Byte)
       Resultat8$=StrU(Resultat8,#Byte)
       Resultat9$=StrU(Resultat9,#Byte)
       If Resultat0=1
       type$= "femme elfe"
       EndIf 
       If Resultat1=1
       type$= "femme orc"
       EndIf
       If Resultat2=1
       type$= "femme nain"
       EndIf
       If Resultat3=1
       type$= "femme humain"
       EndIf
       If Resultat4=1
       type$= "femme gnome"
       EndIf
       If Resultat5=1
       type$= "homme elfe"
       EndIf
       If Resultat6=1
       type$= "homme orc"
       EndIf
       If Resultat7=1
       type$= "homme nain"
       EndIf
       If Resultat8=1
       type$= "homme humain"
       EndIf
       If Resultat9=1
       type$= "homme gnome"
       EndIf       
      SetGadgetState(#ProgressBar_0,5)
       OpenFile(2,nomfichier$) 
       WriteStringN (nom$) 
       WriteStringN (prenom$)
       WriteStringN (mdp$)
       WriteStringN (jour$)
       WriteStringN (mois$)
       WriteStringN (description$)
       WriteStringN (metier$)
       WriteStringN (classe$)
       WriteStringN (lvl$)
       WriteStringN (type$)
       SetGadgetState(#ProgressBar_0,10)
       CloseFile(2)
       CloseWindow (0)
       Goto menu2

      Default
    EndSelect


ForEver 
EndIf 
 
menu2:


   If OpenWindow(3, 216, 2, 200, 100,    #PB_Window_ScreenCentered|#PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "Menu Teok")
    If CreateGadgetList(WindowID())
      ButtonGadget(#Button_3, 60, 60, 80, 30, "OK")
      TextGadget(#Text_3, 10, 20, 180, 30, "personage corectement creéé", #PB_Text_Center)
      
    EndIf
  EndIf   

Repeat  
 event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
      Case #Button_3
CloseWindow (3) 
Goto menu3

      Default
    EndSelect 
      ForEver 
 
 menu3:
 
  If OpenWindow(4, 228, 28, 600, 400,    #PB_Window_ScreenCentered|#PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "New window ( 0 )")
    If CreateGadgetList(WindowID())
      Frame3DGadget(#Frame3D_0, 40, 0, 130, 50, "Nom")
      Frame3DGadget(#Frame3D_1, 40, 200, 130, 50, "Métier")
      Frame3DGadget(#Frame3D_2, 40, 150, 130, 50, "classe")
      Frame3DGadget(#Frame3D_3, 40, 50, 130, 50, "Prénom")
      Frame3DGadget(#Frame3D_4, 10, 300, 580, 50, "Description")
      Frame3DGadget(#Frame3D_5, 40, 250, 130, 50, "Mot de passe")
      Frame3DGadget(#Frame3D_7, 260, 0, 130, 50, "Lvl")
      Frame3DGadget(#Frame3D_8, 40, 100, 130, 50, "type")
      Frame3DGadget(#Frame3D_9, 260, 50, 130, 50, "Vie")
      Frame3DGadget(#Frame3D_10, 260, 100, 130, 50, "Magie")
      Frame3DGadget(#Frame3D_11, 260, 150, 130, 50, "Attaque")
      Frame3DGadget(#Frame3D_12, 260, 200, 130, 50, "Déffence")
      Frame3DGadget(#Frame3D_13, 260, 250, 130, 50, "date de naissance")
      TextGadget(#Text_12, 50, 20, 110, 20, nom$)
      TextGadget(#Text_13, 50, 220, 110, 20, metier$)
      TextGadget(#Text_2, 50, 170, 110, 20, classe$)
      TextGadget(#Text_3, 50, 70, 110, 20, prenom$)
      TextGadget(#Text_4, 20, 320, 560, 20, description$)
      TextGadget(#Text_5, 50, 270, 110, 20, mdp$)
      TextGadget(#Text_6, 270, 20, 110, 20, lvl$)
      TextGadget(#Text_7, 50, 120, 110, 20, type$)
      TextGadget(#Text_8, 270, 70, 110, 20, vie$)
      TextGadget(#Text_15, 270, 120, 110, 20, magie$)
      TextGadget(#Text_10, 270, 170, 110, 20, att$)
      TextGadget(#Text_11, 270, 220, 110, 20, deff$)
      TextGadget(#Text_11, 270, 270, 110, 20, jour$+"/"+mois$+"956")
      ButtonGadget(#Button_0, 490, 260, 70, 30, "valider")
      ButtonGadget(#Button_1, 490, 220, 70, 30, "imprimer")
      
    EndIf
  EndIf
Repeat  
 event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
      Case #Button_0
      End 
      Default
    EndSelect 
    
  event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
      Case #Button_1
    
If PrintRequester()

  If StartPrinting("PureBasic Test")
  
    If StartDrawing(PrinterOutput())

      DrawingFont(LoadFont(0, "Arial", 30))
  
      Locate(100, 100) : DrawText("profile TEOK")
      
      DrawingFont(LoadFont(0, "Arial", 100))
      
      Locate(100, 300) : DrawText("Perso "+nom$+" "+prenom$)
        
      DrawingFont(LoadFont(0, "Arial", 60))
      Locate(100, 500) : DrawText("nom: "+nom$)
      Locate(100, 600) : DrawText("prenom: "+prenom$)
      Locate(100, 700) : DrawText("mot de passe: "+mdp$)      
      Locate(100, 800) : DrawText("métier: "+metier$)
      Locate(100, 900) : DrawText("classe: "+classe$)
      Locate(100, 1100) : DrawText("type: "+type$)
      Locate(100, 1000) : DrawText("date de naissance: "+jour$+"/"+mois$+"/956")
      Locate(100, 1200) : DrawText("description: "+description$)   
      Locate(100, 1300) : DrawText("vie: "+vie$)  
      Locate(100, 1400) : DrawText("magie: "+magie$)  
      Locate(100, 1500) : DrawText("deffence : "+deff$)  
      Locate(100, 1600) : DrawText("attaque : "+att$)  
      Locate(100, 1700) : DrawText("endurence : "+endu$)   
      Locate(100, 1800) : DrawText("niveau: "+lvl$)
      Box(50,530, 40,40 ,RGB(255,122,0))              
      Box(50,630, 40,40 ,RGB(255,255,122))
      Box(50,730, 40,40 ,RGB(122,255,255))
      Box(50,830, 40,40 ,RGB(0,122,255))
      Box(50,930, 40,40 ,RGB(255,0,0))
      Box(50,1030, 40,40 ,RGB(0,255,0))
      Box(50,1130, 40,40 ,RGB(0,0,255))
      Box(50,1230, 40,40 ,RGB(0,0,0))
      Box(50,1330, 40,40 ,RGB(100,0,100))
      Box(50,1430, 40,40 ,RGB(100,100,0))
      Box(50,1530, 40,40 ,RGB(100,100,100))
      Box(50,1630, 40,40 ,RGB(100,255,0))
      Box(50,1730, 40,40 ,RGB(0,100,10))


      StopDrawing()
    EndIf
    
    StopPrinting()
  EndIf
EndIf    
      

 End
      Default
    EndSelect 


 Until WindowEvent ()=#PB_Event_CloseWindow
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

il te manquait un InitSprite() , il faut lancer le code avec le debugger , il signale ce genre de problème.

J'ai ajouté un Container pour afficher l'écran dedans , maintenant toutes les commandes 3D se feront dans l'écran .
N'oublies un RenderWord() dans la boucle pour voir le résultat.

Code : Tout sélectionner

Enumeration
    #Panel_0
    #Button_0
    #Button_1
    #Button_2
    #Radio_0
    #Radio_1
    #Radio_2
    #Radio_3
    #Radio_4
    #Radio_5
    #Radio_6
    #Radio_7
    #Radio_8
    #Radio_9
    #Frame3D_0
    #Frame3D_1
    #Frame3D_2
    #Frame3D_3
    #Frame3D_4
    #Frame3D_5
    #Frame3D_6
    #Frame3D_7
    #Frame3D_8
    #String_0
    #String_1
    #ProgressBar_0
    #Frame3D_9
    #String_3
    #String_6
    #String_8
    #Listview_0
    #Listview_1
    #Frame3D_13
    #Frame3D_14
    #Frame3D_11
    #Text_2
    #String_10
    #Frame3D_15
    #Frame3D_16
    #Frame3D_17
    #Frame3D_18
    #Frame3D_19
    #Frame3D_20
    #Text_4
    #Text_5
    #Text_6
    #Text_7
    #Text_8
    #Frame3D_21
    #Frame3D_22
    #Frame3D_23
    #Text_11
    #Text_12
    #Text_13
    #Frame3D_24
    #Text_15
    #Frame3D_10
    #Frame3D_12
    #Text_10
    #Button_3
    #Text_3
    #sprite
    #Button_4
    #Button_5
    #Button_6
    #Button_7
    #Button_8
    #Button_9
    #Button_10
    #Button_11
    #Frame3D_26
    #Text_16
    #Frame3D_27
    #Button_27
EndEnumeration
InitSprite()
InitSprite3D()

If OpenWindow(0, 200, 200, 500, 350, #PB_Window_ScreenCentered|#PB_Window_SystemMenu, "Menu TEOK")
    
    If CreateGadgetList(WindowID())
        menu:     
        ;- Panel0
        PanelGadget(#Panel_0, 0, 10, 490, 330)
        AddGadgetItem(#Panel_0, -1, "Personalisation du perso")
        ButtonGadget(#Button_0, 428, 278, 50, 20, "Valider")
        ButtonGadget(#Button_1, 428, 248, 50, 20, "Reset")
        ButtonGadget(#Button_2, 428, 218, 50, 20, "Anuler")
        OptionGadget(#Radio_0, 78, 108, 20, 20, "")
        OptionGadget(#Radio_1, 78, 148, 20, 20, "")
        OptionGadget(#Radio_2, 78, 188, 20, 20, "")
        OptionGadget(#Radio_3, 78, 228, 20, 20, "")
        OptionGadget(#Radio_4, 78, 268, 20, 20, "")
        OptionGadget(#Radio_5, 138, 268, 20, 20, "")
        OptionGadget(#Radio_6, 138, 108, 20, 20, "")
        OptionGadget(#Radio_7, 138, 148, 20, 20, "")
        OptionGadget(#Radio_8, 138, 188, 20, 20, "")
        OptionGadget(#Radio_9, 138, 228, 20, 20, "")
        Frame3DGadget(#Frame3D_26, 188, 78, 130, 210, "apercu")
        Frame3DGadget(#Frame3D_0, 8, 98, 170, 40, "Elfe")
        Frame3DGadget(#Frame3D_1, 8, 138, 170, 40, "Orc")
        Frame3DGadget(#Frame3D_2, 8, 178, 170, 40, "Nain")
        Frame3DGadget(#Frame3D_3, 8, 218, 170, 40, "Humain")
        Frame3DGadget(#Frame3D_4, 8, 258, 170, 40, "Gnome")
        Frame3DGadget(#Frame3D_5, 58, 78, 50, 220, "Femmes")
        Frame3DGadget(#Frame3D_6, 118, 78, 50, 220, "Homme")
        Frame3DGadget(#Frame3D_7, 38, 18, 90, 50, "NOM")
        Frame3DGadget(#Frame3D_8, 128, 18, 90, 50, "Prénoms")
        StringGadget(#String_0, 48, 38, 70, 20, "")
        SendMessage_(GadgetID(#String_0), #EM_LIMITTEXT, 20, 0)
        StringGadget(#String_1, 138, 38, 70, 20, "")
        SendMessage_(GadgetID(#String_0), #EM_LIMITTEXT, 20, 0)
        ProgressBarGadget(#ProgressBar_0, 188, 288, 190, 10, 0, 10, #PB_ProgressBar_Smooth)
        Frame3DGadget(#Frame3D_9, 308, 18, 170, 50, "date de naissance (JJ/MM/AAA)")
        StringGadget(#String_3, 228, 38, 70, 20, "", #PB_String_Password)
        SendMessage_(GadgetID(#String_3), #EM_LIMITTEXT, 20, 0)
        StringGadget(#String_6, 318, 38, 40, 20, "01", #PB_String_Numeric)
        SendMessage_(GadgetID(#String_6), #EM_LIMITTEXT, 2, 0)
        StringGadget(#String_8, 378, 38, 40, 20, "01", #PB_String_Numeric)
        SendMessage_(GadgetID(#String_8), #EM_LIMITTEXT, 2, 0)
        Frame3DGadget(#Frame3D_11, 218, 18, 90, 50, "Mot De Passe")
        TextGadget(#Text_2, 438, 38, 40, 20, "956")
        StringGadget(#String_10, 338, 98, 130, 20, "")
        Frame3DGadget(#Frame3D_15, 328, 78, 150, 50, "description")
        
        Ecran3D=ContainerGadget(#Frame3D_27, 188, 78, 131, 131, "apercu")
        
        AddGadgetItem(#Panel_0, -1, "Métier | Classe")
        ListViewGadget(#Listview_1, 308, 78, 140, 180)
        AddGadgetItem (#Listview_1,-1,"Barbarre")       
        AddGadgetItem (#Listview_1,-1,"Chasseur")
        AddGadgetItem (#Listview_1,-1,"Druide")
        AddGadgetItem (#Listview_1,-1,"Guerrier")       
        AddGadgetItem (#Listview_1,-1,"Voleur")
        ListViewGadget(#Listview_0, 58, 78, 140, 180)
        AddGadgetItem (#Listview_0,-1,"Cuisinier")     
        AddGadgetItem (#Listview_0,-1,"Forgeron")     
        AddGadgetItem (#Listview_0,-1,"Guerrier")
        AddGadgetItem (#Listview_0,-1,"Herboriste")         
        AddGadgetItem (#Listview_0,-1,"Magicien")
        AddGadgetItem (#Listview_0,-1,"Menuisier")       
        AddGadgetItem (#Listview_0,-1,"Mineur")             
        Frame3DGadget(#Frame3D_13, 48, 48, 160, 220, "Métier")
        Frame3DGadget(#Frame3D_14, 298, 48, 160, 220, "Classe")
        AddGadgetItem(#Panel_0, 3, "Caractéristique")
        Frame3DGadget(#Frame3D_16, 38, 38, 80, 50, "Force")
        Frame3DGadget(#Frame3D_17, 38, 98, 80, 50, "Agiliter")
        Frame3DGadget(#Frame3D_18, 38, 158, 80, 50, "Intelligence")
        Frame3DGadget(#Frame3D_19, 338, 248, 80, 50, "Endurance")
        Frame3DGadget(#Frame3D_20, 38, 218, 80, 50, "Déxtériter")
        TextGadget(#Text_4, 48, 58, 50, 20, "15")
        TextGadget(#Text_5, 48, 118, 50, 20, "15")
        TextGadget(#Text_6, 48, 178, 50, 20, "15")
        TextGadget(#Text_7, 348, 268, 60, 20, "3500")
        TextGadget(#Text_8, 48, 238, 60, 20, "15")
        Frame3DGadget(#Frame3D_21, 338, 8, 80, 50, "Vie")
        Frame3DGadget(#Frame3D_22, 338, 68, 80, 50, "Magie")
        Frame3DGadget(#Frame3D_23, 338, 128, 80, 50, "Attaque")
        TextGadget(#Text_11, 348, 28, 60, 20, "15")
        TextGadget(#Text_12, 348, 88, 60, 20, "15")
        TextGadget(#Text_13, 348, 148, 60, 20, "15")
        Frame3DGadget(#Frame3D_24, 338, 188, 80, 50, "Défense")
        TextGadget(#Text_15, 348, 208, 60, 20, "15")
        ButtonGadget(#Button_4, 128, 48, 40, 20, "+")
        ButtonGadget(#Button_5, 128, 68, 40, 20, "-")
        ButtonGadget(#Button_6, 128, 108, 40, 20, "+")
        ButtonGadget(#Button_7, 128, 128, 40, 20, "-")
        ButtonGadget(#Button_8, 128, 168, 40, 20, "+")
        ButtonGadget(#Button_9, 128, 188, 40, 20, "-")
        ButtonGadget(#Button_10, 128, 228, 40, 20, "+")
        ButtonGadget(#Button_11, 128, 248, 40, 20, "-")
        Frame3DGadget(#Frame3D_26, 188, 18, 80, 50, "point restant")
        TextGadget(#Text_16, 198, 38, 60, 20, "20")
        int=15
        agi=15
        force=15
        dex=15
        endu=3500
        vie=15
        magie=15
        deff=15
        att=15
        pr=20
        
    EndIf
    WindowID = WindowID()

    OpenWindowedScreen(Ecran3D,0, 0, 131, 131, 0,0, 0)
    Repeat
        ClearScreen(255,0,0)
        endu$=Str (endu)
        vie$=Str (vie)
        deff$=Str (deff)
        att$=Str (att)
        magie$=Str (magie)
        pr$=Str (pr)
        TextGadget(#Text_7, 348, 268, 60, 20, endu$)
        TextGadget(#Text_11, 348, 28, 60, 20, vie$)
        TextGadget(#Text_12, 348, 88, 60, 20, magie$)
        TextGadget(#Text_13, 348, 148, 60, 20, att$)
        TextGadget(#Text_15, 348, 208, 60, 20, deff$)
        TextGadget(#Text_16, 198, 38, 60, 20, pr$) 
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_4
                If pr >0
                    force=force+1
                    endu=endu+100
                    magie=magie+0
                    att=att+2
                    deff=deff+0
                    vie=vie+1
                    pr=pr-1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    force$=Str (force)     
                    TextGadget(#Text_4, 48, 58, 50, 20, force$)
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$)   
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget   
                EndIf
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_5
                If force>15
                    force=force-1
                    endu=endu-100
                    magie=magie-0
                    att=att-2
                    deff=deff-0
                    vie=vie-1
                    pr=pr+1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    force$=Str (force)     
                    TextGadget(#Text_4, 48, 58, 50, 20, force$)
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$)           
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget   
                EndIf
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_6
                If pr >0
                    agi=agi+1
                    endu=endu+200
                    deff=deff+2
                    vie=vie+2
                    pr=pr-1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    agi$=Str (agi)     
                    TextGadget(#Text_5, 48, 118, 50, 20, agi$)
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$)           
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget     
                EndIf
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_7
                If agi>15
                    agi=agi-1
                    endu=endu-200
                    magie=magie-0
                    deff=deff-2
                    vie=vie-2
                    pr=pr+1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    agi$=Str (agi)     
                    TextGadget(#Text_5,48, 118 ,50, 20, agi$) 
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$)         
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget       
                EndIf
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_8
                If pr >0
                    endu=endu+100
                    magie=magie+3
                    att=att+1
                    deff=deff+1
                    vie=vie+1
                    int=int+1
                    pr=pr-1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    int$=Str (int)     
                    TextGadget(#Text_6, 48, 178, 50, 20, int$) 
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$)   
                    Repeat
                    Until WaitWindowEvent () = #PB_Event_Gadget 
                EndIf       
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_9
                If int>15
                    endu=endu-0
                    magie=magie-3
                    att=att-1
                    deff=deff-1
                    vie=vie-1
                    pr=pr+1
                    int=int-1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    int$=Str (int)     
                    TextGadget(#Text_6, 48, 178, 50, 20, int$)
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$)   
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget 
                EndIf
            Default
        EndSelect 
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_10
                If pr >0
                    endu=endu+100
                    magie=magie+2
                    att=att+0
                    deff=deff+2
                    vie=vie+0
                    dex=dex+1
                    pr=pr-1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    dex$=Str (dex) 
                    TextGadget(#Text_8, 48, 238, 60, 20, dex$)   
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$) 
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget   
                EndIf
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_11
                If dex > 15
                    dex=dex-1
                    endu=endu-100
                    magie=magie-2
                    att=att-0
                    deff=deff-2
                    vie=vie-0
                    pr=pr+1
                    endu$=Str (endu)
                    vie$=Str (vie)
                    deff$=Str (deff)
                    att$=Str (att)
                    magie$=Str (magie)
                    pr$=Str (pr)
                    dex$=Str (dex) 
                    TextGadget(#Text_8, 48, 238, 60, 20, dex$)
                    TextGadget(#Text_7, 348, 268, 60, 20, endu$)
                    TextGadget(#Text_11, 348, 28, 60, 20, vie$)
                    TextGadget(#Text_12, 348, 88, 60, 20, magie$)
                    TextGadget(#Text_13, 348, 148, 60, 20, att$)
                    TextGadget(#Text_15, 348, 208, 60, 20, deff$)
                    TextGadget(#Text_16, 198, 38, 60, 20, pr$) 
                    Repeat   
                    Until WaitWindowEvent () = #PB_Event_Gadget 
                EndIf
            Default
        EndSelect
        
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_2
                End
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_1
                Goto menu
            Default
        EndSelect
        
        event=WindowEvent()
        Gadget = EventGadgetID()
        Select Gadget
            Case #Button_0
                nom$ = GetGadgetText(#String_0)
                prenom$ = GetGadgetText(#String_1)   
                mdp$ = GetGadgetText(#String_3)
                jour$ = GetGadgetText(#String_6)
                mois$ = GetGadgetText(#String_8)
                description$ = GetGadgetText(#String_10)
                metier$ = GetGadgetText(#Listview_0)
                classe$= GetGadgetText(#Listview_1)
                lvl$="1"
                Resultat0 = GetGadgetState(#Radio_0)
                Resultat1 = GetGadgetState(#Radio_1)
                Resultat2 = GetGadgetState(#Radio_2)
                Resultat3 = GetGadgetState(#Radio_3)
                Resultat4 = GetGadgetState(#Radio_4)
                Resultat5 = GetGadgetState(#Radio_5)
                Resultat6 = GetGadgetState(#Radio_6)
                Resultat7 = GetGadgetState(#Radio_7)
                Resultat8 = GetGadgetState(#Radio_8)
                Resultat9 = GetGadgetState(#Radio_9)
                nomfichier$ =(nom$+prenom$+".teok")           
                Resultat0$=StrU(Resultat0,#Byte)
                Resultat1$=StrU(Resultat1,#Byte)
                Resultat2$=StrU(Resultat2,#Byte)
                Resultat3$=StrU(Resultat3,#Byte)
                Resultat4$=StrU(Resultat4,#Byte)
                Resultat5$=StrU(Resultat5,#Byte)
                Resultat6$=StrU(Resultat6,#Byte)
                Resultat7$=StrU(Resultat7,#Byte)
                Resultat8$=StrU(Resultat8,#Byte)
                Resultat9$=StrU(Resultat9,#Byte)
                If Resultat0=1
                    type$= "femme elfe"
                EndIf
                If Resultat1=1
                    type$= "femme orc"
                EndIf
                If Resultat2=1
                    type$= "femme nain"
                EndIf
                If Resultat3=1
                    type$= "femme humain"
                EndIf
                If Resultat4=1
                    type$= "femme gnome"
                EndIf
                If Resultat5=1
                    type$= "homme elfe"
                EndIf
                If Resultat6=1
                    type$= "homme orc"
                EndIf
                If Resultat7=1
                    type$= "homme nain"
                EndIf
                If Resultat8=1
                    type$= "homme humain"
                EndIf
                If Resultat9=1
                    type$= "homme gnome"
                EndIf       
                SetGadgetState(#ProgressBar_0,5)
                OpenFile(2,nomfichier$)
                WriteStringN (nom$)
                WriteStringN (prenom$)
                WriteStringN (mdp$)
                WriteStringN (jour$)
                WriteStringN (mois$)
                WriteStringN (description$)
                WriteStringN (metier$)
                WriteStringN (classe$)
                WriteStringN (lvl$)
                WriteStringN (type$)
                SetGadgetState(#ProgressBar_0,10)
                CloseFile(2)
                CloseWindow (0)
                Goto menu2
                
            Default
        EndSelect
        
        
    ForEver
EndIf
 
menu2:


If OpenWindow(3, 216, 2, 200, 100,    #PB_Window_ScreenCentered|#PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered , "Menu Teok")
    If CreateGadgetList(WindowID())
        ButtonGadget(#Button_3, 60, 60, 80, 30, "OK")
        TextGadget(#Text_3, 10, 20, 180, 30, "personage corectement creéé", #PB_Text_Center)
        
    EndIf
EndIf   

Repeat 
    event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
        Case #Button_3
            CloseWindow (3)
            Goto menu3
            
        Default
    EndSelect
ForEver
 
menu3:
 
If OpenWindow(4, 228, 28, 600, 400,    #PB_Window_ScreenCentered|#PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "New window ( 0 )")
    If CreateGadgetList(WindowID())
        Frame3DGadget(#Frame3D_0, 40, 0, 130, 50, "Nom")
        Frame3DGadget(#Frame3D_1, 40, 200, 130, 50, "Métier")
        Frame3DGadget(#Frame3D_2, 40, 150, 130, 50, "classe")
        Frame3DGadget(#Frame3D_3, 40, 50, 130, 50, "Prénom")
        Frame3DGadget(#Frame3D_4, 10, 300, 580, 50, "Description")
        Frame3DGadget(#Frame3D_5, 40, 250, 130, 50, "Mot de passe")
        Frame3DGadget(#Frame3D_7, 260, 0, 130, 50, "Lvl")
        Frame3DGadget(#Frame3D_8, 40, 100, 130, 50, "type")
        Frame3DGadget(#Frame3D_9, 260, 50, 130, 50, "Vie")
        Frame3DGadget(#Frame3D_10, 260, 100, 130, 50, "Magie")
        Frame3DGadget(#Frame3D_11, 260, 150, 130, 50, "Attaque")
        Frame3DGadget(#Frame3D_12, 260, 200, 130, 50, "Déffence")
        Frame3DGadget(#Frame3D_13, 260, 250, 130, 50, "date de naissance")
        TextGadget(#Text_12, 50, 20, 110, 20, nom$)
        TextGadget(#Text_13, 50, 220, 110, 20, metier$)
        TextGadget(#Text_2, 50, 170, 110, 20, classe$)
        TextGadget(#Text_3, 50, 70, 110, 20, prenom$)
        TextGadget(#Text_4, 20, 320, 560, 20, description$)
        TextGadget(#Text_5, 50, 270, 110, 20, mdp$)
        TextGadget(#Text_6, 270, 20, 110, 20, lvl$)
        TextGadget(#Text_7, 50, 120, 110, 20, type$)
        TextGadget(#Text_8, 270, 70, 110, 20, vie$)
        TextGadget(#Text_15, 270, 120, 110, 20, magie$)
        TextGadget(#Text_10, 270, 170, 110, 20, att$)
        TextGadget(#Text_11, 270, 220, 110, 20, deff$)
        TextGadget(#Text_11, 270, 270, 110, 20, jour$+"/"+mois$+"956")
        ButtonGadget(#Button_0, 490, 260, 70, 30, "valider")
        ButtonGadget(#Button_1, 490, 220, 70, 30, "imprimer")
        
    EndIf
EndIf
Repeat 
    event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
        Case #Button_0
            End
        Default
    EndSelect
    
    event=WindowEvent()
    Gadget = EventGadgetID()
    Select Gadget
        Case #Button_1
            
            If PrintRequester()
                
                If StartPrinting("PureBasic Test")
                    
                    If StartDrawing(PrinterOutput())
                        
                        DrawingFont(LoadFont(0, "Arial", 30))
                        
                        Locate(100, 100) : DrawText("profile TEOK")
                        
                        DrawingFont(LoadFont(0, "Arial", 100))
                        
                        Locate(100, 300) : DrawText("Perso "+nom$+" "+prenom$)
                        
                        DrawingFont(LoadFont(0, "Arial", 60))
                        Locate(100, 500) : DrawText("nom: "+nom$)
                        Locate(100, 600) : DrawText("prenom: "+prenom$)
                        Locate(100, 700) : DrawText("mot de passe: "+mdp$)     
                        Locate(100, 800) : DrawText("métier: "+metier$)
                        Locate(100, 900) : DrawText("classe: "+classe$)
                        Locate(100, 1100) : DrawText("type: "+type$)
                        Locate(100, 1000) : DrawText("date de naissance: "+jour$+"/"+mois$+"/956")
                        Locate(100, 1200) : DrawText("description: "+description$)   
                        Locate(100, 1300) : DrawText("vie: "+vie$) 
                        Locate(100, 1400) : DrawText("magie: "+magie$) 
                        Locate(100, 1500) : DrawText("deffence : "+deff$) 
                        Locate(100, 1600) : DrawText("attaque : "+att$) 
                        Locate(100, 1700) : DrawText("endurence : "+endu$)   
                        Locate(100, 1800) : DrawText("niveau: "+lvl$)
                        Box(50,530, 40,40 ,RGB(255,122,0))             
                        Box(50,630, 40,40 ,RGB(255,255,122))
                        Box(50,730, 40,40 ,RGB(122,255,255))
                        Box(50,830, 40,40 ,RGB(0,122,255))
                        Box(50,930, 40,40 ,RGB(255,0,0))
                        Box(50,1030, 40,40 ,RGB(0,255,0))
                        Box(50,1130, 40,40 ,RGB(0,0,255))
                        Box(50,1230, 40,40 ,RGB(0,0,0))
                        Box(50,1330, 40,40 ,RGB(100,0,100))
                        Box(50,1430, 40,40 ,RGB(100,100,0))
                        Box(50,1530, 40,40 ,RGB(100,100,100))
                        Box(50,1630, 40,40 ,RGB(100,255,0))
                        Box(50,1730, 40,40 ,RGB(0,100,10))
                        
                        
                        StopDrawing()
                    EndIf
                    
                    StopPrinting()
                EndIf
            EndIf   
            
            
            End
        Default
    EndSelect
    
    
Until WindowEvent ()=#PB_Event_CloseWindow
bernard13
Messages : 1221
Inscription : mer. 05/janv./2005 21:30

Message par bernard13 »

quand je lance ton code
purebasic me dis qu'il ya une erreur qui dois fermer le programme
Avatar de l’utilisateur
Droopy
Messages : 1151
Inscription : lun. 19/juil./2004 22:31

Message par Droopy »

Attention le CPU tourne à 100%
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

faut changer le WindowEvent() en WaitWindowEvent() peut etre
ou alors ajouter un petit Delay()

Dri
comtois
Messages : 5186
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

tiens un exemple mélangeant window , 3D et gadgets

Dans ton code , tu as beaucoup de WindowEvent() qui se suivent , je n'ai pas étudié ,et je ne suis pas le mieux placé pour te conseiller , mais il me semble que tu devrais revoir l'organisation de ton code :)

Code : Tout sélectionner

;Comtois
;Escalier 3D en colimaçon
;PB 3.93 le 13/03/05

;- Déclaration des procédures
Declare Erreur(Message$)
Declare.f Sind(Angle.f)
Declare.f Cosd(Angle.f)
Declare.f WrapValue(Angle.f)

; -Initialisation
;#ScreenWidth = 1024 : #ScreenHeight = 768 : #ScreenDepth = 32
ExamineDesktops()
ScreenHeight=DesktopHeight(0)
ScreenWidth=DesktopWidth(0)


If InitEngine3D() = 0
    Erreur("Impossible d'initialiser la 3D , vérifiez la présence de engine3D.dll")
ElseIf InitSprite() = 0 Or InitKeyboard() = 0
    Erreur("Impossible d'initialiser DirectX 7 Ou plus")
EndIf
    
If OpenWindow(0, 0,0,ScreenWidth , ScreenHeight , #PB_Window_SystemMenu ,"Démo" ) = 0
    Erreur("Impossible d'ouvrir l'écran ")
EndIf
If CreateGadgetList(WindowID())
    ;Quelques gadgets pour montrer qu'on peut mélanger gadgets et 3D
    ButtonGadget(2,10,140,100,20,"Quitter")
    Frame3DGadget(1,10,20,100,100,"Démo")
    Ecran3D=ContainerGadget(0,ScreenWidth/4,ScreenHeight/4,ScreenWidth/2,ScreenHeight/2,#PB_Container_Single)
    
EndIf
    
If OpenWindowedScreen(Ecran3D,1,1,ScreenWidth/2 -2 , ScreenHeight/2 - 2,0,0,0)=0
    Erreur("Impossible d'ouvrir l'écran ")
EndIf  
  
;-Mesh
CreateMesh(0) ;Cube
SetMeshData(0, #PB_Mesh_Vertices , ?CubePoints , 16)
SetMeshData(0, #PB_Mesh_Triangles , ?CubeTriangles, 12)
SetMeshData(0, #PB_Mesh_UVCoordinates , ?CubeTextures , 16)
SetMeshData(0, #PB_Mesh_Normals , ?CubeNormales , 16)

;-light
CreateLight(0,RGB(255,255,255)  )

;- Material
CreateMaterial(0 ,LoadTexture(0,"Bois1.png"))
MaterialShadingMode(0, #PB_Material_Phong)

;-Entity
;Fabrique l'escalier
Angle.f = 0
NombreMarche = 35
distance = 70
HauteurMarche = 15
LargeurMarche = 100
ProfondeurMarche = 66
;Les marches
For Marche = 0 To NombreMarche - 1
    CreateEntity(Marche, MeshID(0), MaterialID(0))
    ResizeEntity (Marche, LargeurMarche, HauteurMarche, ProfondeurMarche)
    EntityLocate(Marche, Cosd(Angle) * distance, HauteurMarche / 2 + HauteurMarche * Marche, -Sind(Angle) * distance)
    RotateEntity(Marche, Angle, 0, 0)
    Angle = WrapValue(Angle + 30)
Next Marche

;La colonne centrale
HauteurColonne.f = NombreMarche * HauteurMarche
Colonne = Marche + 1
CreateEntity(Colonne, MeshID(0) , MaterialID(0) )
ResizeEntity(Colonne, 4 + distance / 2 , HauteurColonne, 4 + distance / 2 )
EntityLocate(Colonne, 0, HauteurColonne / 2, 0 )

;- Camera
CreateCamera(0, 0, 0, 100, 100)
CameraLocate(0,0,0,20)
AmbientColor(RGB(85,85,85))

;- Boucle principale
HauteurCamera = NombreMarche * 5
DistanceCamera = 450
Pas.f = 0.6

Repeat
    EventID=WindowEvent()
    ClearScreen(0, 0, 0)
    CameraLocate(0, Cosd(Angle) * DistanceCamera , HauteurCamera, -Sind(Angle) * DistanceCamera)
    LightLocate (0, Cosd(Angle) * DistanceCamera / 2, HauteurCamera, -Sind(Angle) * DistanceCamera / 2)
    CameraLookAt(0, 0, HauteurCamera, 0)
    
    Angle = WrapValue(Angle + Pas / 2)
    If HauteurCamera < 0 Or HauteurCamera > NombreMarche * HauteurMarche : Pas * -1 : EndIf
    
    HauteurCamera + Pas
    
    RenderWorld()
    FlipBuffers()

    
Until EventID = #PB_Event_CloseWindow 

End

;- Procédures

Procedure Erreur(Message$)
    MessageRequester("Erreur", Message$, 0)
    End
EndProcedure

Procedure.f WrapValue(Angle.f) 
    Angle/360 
    Angle-Int(Angle) 
    If Angle<0 
        ProcedureReturn (Angle+1)*360 
    Else 
        ProcedureReturn Angle*360 
    EndIf 
EndProcedure 

Procedure.f Cosd( Angle.f )
    ;calcule le cos d'un angle en degré
    ProcedureReturn Cos( Angle * 0.0174533 )
EndProcedure

Procedure.f Sind( Angle.f )
    ;calcule le sin d'un angle en degré
    ProcedureReturn Sin( Angle * 0.0174533 )
EndProcedure

;-Datas du Cube

DataSection

CubePoints:
Data.f -0.5,-0.5,-0.5
Data.f -0.5,-0.5,0.5
Data.f 0.5,-0.5,0.5
Data.f 0.5,-0.5,-0.5

Data.f -0.5,0.5,-0.5
Data.f -0.5,0.5,0.5
Data.f 0.5,0.5,0.5
Data.f 0.5,0.5,-0.5

Data.f -0.5,-0.5,-0.5
Data.f -0.5,-0.5,0.5
Data.f 0.5,-0.5,0.5
Data.f 0.5,-0.5,-0.5

Data.f -0.5,0.5,-0.5
Data.f -0.5,0.5,0.5
Data.f 0.5,0.5,0.5
Data.f 0.5,0.5,-0.5

CubeNormales:
Data.f -5,0,-5
Data.f -5,0,5
Data.f 5,0,5
Data.f 5,0,-5
Data.f -5,0,-5
Data.f -5,0,5
Data.f 5,0,5
Data.f 5,0,-5

Data.f 0,-10,0
Data.f 0,-10,0
Data.f 0,-10,0
Data.f 0,-10,0
Data.f 0,10,0
Data.f 0,10,0
Data.f 0,10,0
Data.f 0,10,0

CubeTriangles:
Data.w 0,4,7
Data.w 0,7,3
Data.w 1,5,4
Data.w 1,4,0
Data.w 2,6,5
Data.w 2,5,1
Data.w 3,7,6
Data.w 3,6,2
Data.w 9,8,11
Data.w 9,11,10
Data.w 12,13,14
Data.w 12,14,15

CubeTextures:
Data.f 0,1
Data.f 1,1
Data.f 0,1
Data.f 1,1

Data.f 0,0
Data.f 1,0
Data.f 0,0
Data.f 1,0

Data.f 0,0
Data.f 1,0
Data.f 1,1
Data.f 0,1

Data.f 0,0
Data.f 1,0
Data.f 1,1
Data.f 0,1
EndDataSection 
scaraber
Messages : 362
Inscription : ven. 15/juil./2005 17:32

Message par scaraber »

daccord je metrait des delay ou waitwindow mais je commence dans pure basic voila tout sinon merci bcp comtois il me reste plus qu'a trouver comment metre des objet dans l'apercu maisi je n'est pas trouver coment faire des "mesh"....
et j'ai essayer de metre un intenigme 3D masi sa marche pas(erreur)
voila
++
Répondre