FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» Logiciel de planétarium.
cacher un MAIN_MENU_POP Emptypar Pedro Sam 23 Nov 2024 - 15:50

» Un autre pense-bête...
cacher un MAIN_MENU_POP Emptypar Froggy One Jeu 21 Nov 2024 - 15:54

» Récupération du contenu d'une page html.
cacher un MAIN_MENU_POP Emptypar Pedro Sam 16 Nov 2024 - 14:04

» Décompilation
cacher un MAIN_MENU_POP Emptypar JL35 Mar 12 Nov 2024 - 19:57

» Un album photos comme du temps des grands-mères
cacher un MAIN_MENU_POP Emptypar jjn4 Mar 12 Nov 2024 - 17:23

» traitement d'une feuille excel
cacher un MAIN_MENU_POP Emptypar jjn4 Jeu 7 Nov 2024 - 3:52

» Aide-mémoire mensuel
cacher un MAIN_MENU_POP Emptypar jjn4 Lun 4 Nov 2024 - 18:56

» Des incomprèhension avec Timer
cacher un MAIN_MENU_POP Emptypar Klaus Mer 30 Oct 2024 - 18:26

» KGF_dll - nouvelles versions
cacher un MAIN_MENU_POP Emptypar Klaus Mar 29 Oct 2024 - 17:58

» instructions panoramic
cacher un MAIN_MENU_POP Emptypar maelilou Lun 28 Oct 2024 - 19:51

» Figures fractales
cacher un MAIN_MENU_POP Emptypar Marc Ven 25 Oct 2024 - 12:18

» Panoramic et Scanette
cacher un MAIN_MENU_POP Emptypar Yannick Mer 25 Sep 2024 - 22:16

» Editeur d étiquette avec QR évolutif
cacher un MAIN_MENU_POP Emptypar JL35 Lun 23 Sep 2024 - 22:40

» BUG QR Code DelphiZXingQRCode
cacher un MAIN_MENU_POP Emptypar Yannick Dim 22 Sep 2024 - 11:40

» fichier.exe
cacher un MAIN_MENU_POP Emptypar leclode Ven 20 Sep 2024 - 19:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Novembre 2024
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier
Le Deal du moment :
LEGO Icons 10331 – Le martin-pêcheur
Voir le deal
35 €

 

 cacher un MAIN_MENU_POP

Aller en bas 
3 participants
AuteurMessage
silverman

silverman


Nombre de messages : 970
Age : 52
Localisation : Picardie
Date d'inscription : 18/03/2015

cacher un MAIN_MENU_POP Empty
MessageSujet: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP EmptySam 15 Juin 2019 - 11:41

Bonjour à tous

Voici un code pour cacher un MAIN_MENU_POP, c'est limité aux objets qui supportent la commande ON_MOUSE_MOVE mais ça fonctionne:
Code:
' test_main_menu_pop.bas
label cacher_pop_menu
dim objet_survole , last_objet_survole

panel 1 : top 1,10 : left 1,10
memo 2 : top 2,10 : left 2,250
main_menu_pop 10
sub_menu 11 : caption 11,"Fichiers" : parent 11,10

on_mouse_move 0,cacher_pop_menu
on_mouse_move 1,cacher_pop_menu
on_mouse_move 2,cacher_pop_menu


end
cacher_pop_menu:
 objet_survole = number_mouse_move   :' nouvelle commande
 off_mouse_move objet_survole
 '
 if objet_survole<>last_objet_survole
   '
   select objet_survole
      case 0: show 11
      case 1: hide 11
      case 2: hide 11
   end_select
   '
 end_if
 last_objet_survole = objet_survole
on_mouse_move objet_survole,cacher_pop_menu
return
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

cacher un MAIN_MENU_POP Empty
MessageSujet: Re: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP EmptySam 15 Juin 2019 - 12:55

Bonjour Silverman !

Content de te voir et merci pour ton code.

Malheureusement, c'est trop restrictif pour moi. J'ai trop d'objet à gérer...
Mais ça sera sûrement utile dans d'autre cas...

Merci pour ta participation. Wink
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

cacher un MAIN_MENU_POP Empty
MessageSujet: Re: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP EmptySam 15 Juin 2019 - 14:09

Bonjour à tous,

@Silverman

Si j'en crois le manuel de référence, la commande HIDE ne s'applique pas au MAIN_MENU et SUB_MENU, mais il n'y aurait pas d'interdiction pour MAIN_MENU_POP.
Ce qui pose problème pour un SUB_MENU ayant pour PARENT (Voir grand_parent) un MAIN_MENU_POP

Donc je pense qu'il manque peut-être l'objet SUB_MENU_POP pour aller avec MAIN_MENU_POP et pour ce nouvel objet HIDE et SHOW fonctionnerait.

Pourtant ton code semble fonctionner Question Question Question

J'ai fait une tentative, à partir de ton code, pour affecter un SUB_MENU "_POP" à chaque objet cliqué-droit, mais c'est un échec.
Je te donne le code, quand même, pour que tu puisse regarder si tu trouves une solution.

A+


Code:
' test_main_menu_pop.bas
label cacher_pop_menu
dim objet_survole , last_objet_survole, n%

panel 1 : top 1,10 : left 1,10
memo 2 : top 2,10 : left 2,250

main_menu_pop 9
    sub_menu 10 : caption 10,"Menu Contextuel Form 0" : parent 10,9
        sub_menu 11 : caption 11,"sub_menu 11" : parent 11,10

    sub_menu 20 : caption 20,"Menu Contextuel Panel 1" : parent 20,9
        sub_menu 21 : caption 21,"sub_menu 21" : parent 21,20

    sub_menu 30 : caption 30,"Menu Contextuel Memo 2" : parent 30,9
        sub_menu 31 : caption 31,"sub_menu 31" : parent 31,30

on_mouse_move 0,cacher_pop_menu
on_mouse_move 1,cacher_pop_menu
on_mouse_move 2,cacher_pop_menu

END

cacher_pop_menu:
 objet_survole = number_mouse_move   :' nouvelle commande
 off_mouse_move objet_survole
 '
 if objet_survole<>last_objet_survole
   '
  
   if number_click=0 then ClearAllPopMenu() : show 10 : show 11 :' Form 0
   if number_click=1 then ClearAllPopMenu() : show 20 : show 21 :' Panel 1
   if number_click=2 then  ClearAllPopMenu() : show 30 : show 31 :' Memo 2
   '
 end_if
 last_objet_survole = objet_survole
 on_mouse_move objet_survole,cacher_pop_menu
RETURN

SUB ClearAllPopMenu()
    for n%=1 to number_objects
        if object_exists(n%)=1 and object_type(n%)=13 then hide n%
    next n%
END_SUB
Revenir en haut Aller en bas
silverman

silverman


Nombre de messages : 970
Age : 52
Localisation : Picardie
Date d'inscription : 18/03/2015

cacher un MAIN_MENU_POP Empty
MessageSujet: Re: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP EmptySam 15 Juin 2019 - 16:22

@Jean-claude
Et si, HIDE s'applique au SUB_MENU, c'est une coquille de l'aide. Ton code ne fonctionne pas car "number_click" ne renvoi un résultat que si "on_click" est déclaré pour un objet. Je pense que pour affecter un SUB_MENU "_POP" à chaque objet cliqué-droit, ça doit être plus facile en modifiant le code ci-dessous, pour Minibug

@Minibug
Une autre manière beaucoup plus simple de cacher un MAIN_MENU_POP:
Code:
' test_main_menu_pop.bas

label cacher_pop_menu,montrer_pop_menu
dim MainMenuPop,i

panel 1 : top 1,10 : left 1,10
memo 2 : top 2,10 : left 2,250
panel 3 : top 3,150 : left 3,10
memo 4 : top 4,150 : left 4,250

' pour que ça fonctionne, les numéros des sub_menus du main_menu_pop doivent se suivre !!!
MainMenuPop=10
main_menu_pop MainMenuPop
i=MainMenuPop
i=i+1 : sub_menu i : caption i,"Ligne 1" : parent i,MainMenuPop
i=i+1 : sub_menu i : caption i,"Ligne 2" : parent i,MainMenuPop
i=i+1 : sub_menu i : caption i,"Ligne 3" : parent i,MainMenuPop
i=i+1 : sub_menu i : caption i,"#" : parent i,MainMenuPop : hide i :' jamais affiché, marque la fin des sub_menus du main_menu_pop

' cacher le main_menu_pop pour ces objets
hide_menu_pop(1)
hide_menu_pop(2)


END
' Ne s'applique qu'aux objets supportant: on_mouse_down, on_mouse_up
cacher_pop_menu:
 off_mouse_down number_mouse_down
 off_mouse_up number_mouse_down
   mon_menu_pop(0) :' 0=cacher
 on_mouse_up number_mouse_down,montrer_pop_menu
 on_mouse_down number_mouse_down,cacher_pop_menu
return

montrer_pop_menu:
 off_mouse_up number_mouse_up
 off_mouse_down number_mouse_up
   mon_menu_pop(1) :' 1=montrer
 on_mouse_down number_mouse_up,cacher_pop_menu
 on_mouse_up number_mouse_up,montrer_pop_menu
return

sub hide_menu_pop(N)
   on_mouse_down N,cacher_pop_menu
   on_mouse_up N,montrer_pop_menu
end_sub

sub mon_menu_pop(etat)
 dim_local i
   i=MainMenuPop+1
   while caption$(i)<>"#"   :' dernier sub_menu du main_menu_pop
     if etat=0
       hide i
     else
       show i
     end_if
     i=i+1
   end_while
end_sub
Revenir en haut Aller en bas
Jean Claude

Jean Claude


Nombre de messages : 5950
Age : 70
Localisation : 83 Var
Date d'inscription : 07/05/2009

cacher un MAIN_MENU_POP Empty
MessageSujet: Re: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP EmptySam 15 Juin 2019 - 18:52

Merci Sylverman,

Effectivement number_click n'est pas adapté à la situation. Embarassed

Mais j'ai trouvé la solution pour faire un "PopMenu" personnalisé à un objet.
C'est ce que Minibug recherche.
dans le code ci-dessous, il suffit de tenir à jour la SUB ClearAllPopMenu() et le sous-programme AfiPopMenu: et bien sur d'affecter des ON_CLICK à chaque SUB_MENU pour le traitement


Code:
' test_main_menu_pop.bas

label AfiPopMenu
dim n%

panel 1 : top 1,10 : left 1,10
memo 2 : top 2,10 : left 2,250

main_menu_pop 9
    sub_menu 10 : caption 10,"Form 0 / Ligne 1" : parent 10,9
    sub_menu 11 : caption 11,"Form 0 / Ligne 2" : parent 11,9

    sub_menu 20 : caption 20,"Panel 1 / Ligne 1" : parent 20,9
        sub_menu 21 : caption 21,"Panel 1 / Ligne 2" : parent 21,9

    sub_menu 30 : caption 30,"Memo 2" : parent 30,9
        sub_menu 31 : caption 31,"sub_menu 31" : parent 31,30
        sub_menu 32 : caption 32,"sub_menu 32" : parent 32,30

on_mouse_down 0,AfiPopMenu
on_mouse_down 1,AfiPopMenu
on_mouse_down 2,AfiPopMenu

END

AfiPopMenu:
ClearAllPopMenu()
if mouse_right_down(0)=1 then show 10 : show 11 :' Form 0
if mouse_right_down(1)=1 then show 20 : show 21 :' Panel 1
if mouse_right_down(2)=1 then show 30 : show 31 : show 32 :' Memo 2
RETURN


SUB ClearAllPopMenu()
    hide 10 : hide 11 :' Form 0
    hide 20 : hide 21 :' Panel 1
    hide 30 : hide 31 : hide 32 :' Memo 2
END_SUB


A+
Revenir en haut Aller en bas
Minibug

Minibug


Nombre de messages : 4570
Age : 58
Localisation : Vienne (86)
Date d'inscription : 09/02/2012

cacher un MAIN_MENU_POP Empty
MessageSujet: Re: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP EmptySam 15 Juin 2019 - 19:39

Oui Jean Claude ! cheers

Ça ressemble de très prêt à ce que je recherche.
Merci à tous pour vos tests et propositions.

Cependant, j’espère que Jack pourra apporter une réponse à la façon de la fonction KGF de Klaus. !
Revenir en haut Aller en bas
http://gpp.panoramic.free.fr
Contenu sponsorisé





cacher un MAIN_MENU_POP Empty
MessageSujet: Re: cacher un MAIN_MENU_POP   cacher un MAIN_MENU_POP Empty

Revenir en haut Aller en bas
 
cacher un MAIN_MENU_POP
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» on peut pas cacher un 3d_plane
» Cacher la barre des tâches

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos sources, vos utilitaires à partager-
Sauter vers: