[RESOLU] MDIGadget problèmes

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Anonyme 2
Messages : 183
Inscription : ven. 18/mars/2011 11:53

[RESOLU] MDIGadget problèmes

Message par Anonyme 2 »

Yo, :mrgreen:
J'ai essayé de faire un ptit programme, mais il y a un petit probleme au niveau de la Frame3DGadget, mais je ne sais pas quoi. :roll:
Bref, quand je compile, que j'execute, et qu'enfin j'appuis sur le menu essais (puis le sous-menu essais), la fenetre disparait, se minimise ou je sais pas quoi. En même temps que ce phénomène incomprehensible se passe, le debuggeur me dit qu'il n'y a aucune GadgetList() actuellement, et donc que le ButtonGadget ne peut s'initialiser dans la fenêtre Essais :cry:
Enfin, je ne comprends pas ce qu'il se passe :?
Voila mon petit code:

Code : Tout sélectionner

Enumeration
  #Window
  #MDI
  #Menu
  #Menu_rien
EndEnumeration
Enumeration
  #Essais1
  #Essais2
  #Essais3
EndEnumeration
Structure MDIWindow
  Window.f
  Button.f
  Frame3DGadget.f
  StringGadget.f   
EndStructure
Global NewList MDIWindow.MDIWindow()
OpenWindow(#Window, 300, 50, 900, 650, "Dzoumaka network [Tool - D&W plateform]",  #PB_Window_SystemMenu | #PB_Window_TitleBar )
CreateMenu(#Menu, WindowID(#Window))
MenuTitle("Essais")
MenuItem(1, "Essais")
MDIGadget(#MDI, 0, 0, 850, 650, 1, #Menu_rien, #PB_MDI_AutoSize)
Repeat ;-Boucle principale    
  event=WaitWindowEvent(10)
  If event=#PB_Event_CloseWindow    
    Window=EventWindow()      
    If Window=#Window
      End         
    ElseIf Window=MDIWindow()\Window
      If ListSize(MDIWindow())<>0             
        CloseWindow(Window=MDIWindow()\Window)          
      EndIf               
    EndIf    
  ElseIf event=#PB_Event_Menu      
    Select EventMenu()   
      Case 1 
        LastElement(MDIWindow())  
        AddElement(MDIWindow())             
        MDIWindow()\Window=AddGadgetItem(#MDI, -1, "Essais") 
        ResizeWindow(MDIWindow()\Window, 0, 0, 150, 109)
        width=WindowWidth(MDIWindow()\Window)
        height=WindowHeight(MDIWindow()\Window)
        WindowBounds(MDIWindow()\Window, width, height, width, height)
        MDIWindow()\Frame3DGadget=Frame3DGadget(#Essais1, 10, 10, 130, 50, "")        
        MDIWindow()\Button=ButtonGadget(#Essais2, 40, 70, 70, 30, "Check")
        MDIWindow()\StringGadget=StringGadget(#Essais3, 20, 30, 110, 20, "")         
    EndSelect
  EndIf
ForEver
Dernière modification par Anonyme 2 le sam. 03/déc./2011 22:05, modifié 3 fois.
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: MDIGadget: erreur GadgetList ?

Message par Ar-S »

J'ai pas testé mais tu crées une liste en relation avec une structure.
je pense que tu devrais mettre : AddElement(MDIWindow.MDIWindow()) au lieu de AddElement(MDIWindow())
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Anonyme 2
Messages : 183
Inscription : ven. 18/mars/2011 11:53

Re: MDIGadget: erreur GadgetList ?

Message par Anonyme 2 »

Merci de ta reponse, mais j'ai testé comme tu me l'as dit en mettant AddElement(MDIWindow.MDIWindow()) au lieu de AddElement(MDIWindow()), ou encore LastElement(MDIWindow.MDIWindow()) au lieu de LastElement(MDIWindow()), mais le problème persiste :|
zaphod
Messages : 135
Inscription : dim. 07/déc./2008 9:32

Re: MDIGadget: erreur GadgetList ?

Message par zaphod »

...
Dernière modification par zaphod le dim. 27/mai/2012 7:24, modifié 1 fois.
Anonyme 2
Messages : 183
Inscription : ven. 18/mars/2011 11:53

Re: MDIGadget: erreur GadgetList ?

Message par Anonyme 2 »

Merci de ta réponse, cela marche :)
Mais j'ai revus un peu mon code en fonction du tiens, et je me suis rendus compte qu'en changeant simplement la constante associée au gadgets, cela marchais aussi, alors je ne comprends pas trop :|
Enfin bref, problème résolus, merci à vous! :mrgreen:
Anonyme 2
Messages : 183
Inscription : ven. 18/mars/2011 11:53

Re: MDIGadget problèmes

Message par Anonyme 2 »

Yo,
Un autre petit problème me revient: j'aimerais savoir si ce serait possible de fixer une image en fond d'écran (donc par dessus le MDIGadget), car ImageGadget initialise correctement l'image, mais celle-ci disparait peu à peu des l'ouverture de fenetre par dessus :roll:
Avatar de l’utilisateur
Ar-S
Messages : 9539
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: MDIGadget problèmes

Message par Ar-S »

Tu as essayé SetGadgetAttribute() avec #PB_MDI_Image ? => : Applique une image de fond à la fenêtre MDI.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Anonyme 2
Messages : 183
Inscription : ven. 18/mars/2011 11:53

Re: MDIGadget problèmes

Message par Anonyme 2 »

Ah oui effectivement, ca marche!! :mrgreen:
Bon, j'essayerais de fouiller un peu mieux la doc hein :?
Merci a tous, problèmes résolus.
Répondre