Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonsoir,
Je monte actuellement un petite application ou j'ai créer mes fénêtres et un menu, j'ai aussi écrit une petite fonction gf_habilite() pour gérer de façon automatique l'affichage d'un menu à un utilisateur ou pas. J'ai bien suivi toutes les étapes de constructions d'un menu. Mais à l'éxécution, au moment que je jeux ouvrir une fénêtre j'ai l'erreur suivante et l'application s'arrête immédiatement de s'éxecuter:
PowerBuilder Application Execution Error(R0002)
Application terminated
Error : Null object reference at ligne 10 in function gf_habilite of object gf_habilite.
Je suis un peu perdu, je comprends bien l'erreur qu'il me transmet met là, je ne comprends pas car tout à l'air normal. sur ce je vais vous passer la ligne 1 à 15 de gf_habilite pour que vous puissiez aussi me donner votre avis.
Merci d'avancepour vos réponses
m_app_frame lm_app_frame // On affecte à cette variable l'Id de notre menu lm_app_frame = win.MenuId // traitements (ex) - On rend le menu invisible lm_app_frame.m_programme.visible = true lm_app_frame.m_programme.m_quitter.visible = true //Structure des nomenclatures lm_app_frame.m_file.visible = false lm_app_frame.m_file.m_new.visible = false lm_app_frame.m_file.m_new.m_structuredesnomenclatures.visible = false
Dernière modification par legagneur (24-12-2013 09:32:43)
Hors ligne
Salut, la ligne 10 c'est la quelle dans ton script ?
Hors ligne
c'est la ligne suivante
lm_app_frame.m_programme.visible = true
Hors ligne
soit lm_app_frame n'est pas bien récupéré, à tester avec un isvalid()soit m_app_frame n'a pas de sous-menu m_programme
Dernière modification par erasorz (20-12-2013 11:37:30)
Hors ligne
erasorz a écrit:
soit m_app_frame n'a pas de sous-menu m_programme
Quand on tente d'accéder à un sous-menu qui n'existe pas, on obtient
compilo pb11.5 a écrit:
Error C0019: Incompatible property m_inconnu for type m_nom_du_menu
Hors ligne
pas faux...
Hors ligne
erasorz a écrit:
soit lm_app_frame n'est pas bien récupéré, à tester avec un isvalid()
lm_appframe est un m_app_frame, et m_app_frame c'est bien un type de menu ?
Hors ligne
Le gf_habilite est appelé quand ?
Il ne serait pas appelé avant que le menu ne soit effectivement instancié par la fenêtre win ?
Hors ligne
Bonjour,
Le m_app_frame est bien un type de menu.
le gf_habilite() est appele dans le Open de ma fénêtre window.
Hors ligne
Salut,
Pourrais tu faire afficher le nom de la classe du menu que tu récupères.
m_app_frame lm_app_frame MessageBox ( "" , win.MenuId.className() ) // On affecte à cette variable l'Id de notre menu lm_app_frame = win.MenuId
Et vérifier si tu as bien un menu de type m_app_frame ou hérité de m_app_frame.
Cdt
Hors ligne
Bonjour cher tous,
Vous n'allez peut-être me considérer comme le plus brave des idiots, mais la résolution de ce problème venait juste de moi, d'une erreur de débutant. En effet, après avoir éssayer toutes vos suggestions, j'ai entrepris de recommencer la construction de mon frame window pas à pas et quelle n'a pas été ma surprise de constater que cet erreur était dû au fait que,
Au niveau des proprietés de mon window, je n'avais pas renseigné le MenuName. il était vide ce qui avait pour conséquence de produire l'erreur décrite ci-dessus.
Je vous remercie grandement pour vos contributions et veuillez m'excuser pour le désagrément.
Cdlt
Hors ligne