FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Demande urgente en maths.
par JL35 Aujourd'hui à 22:26

» Compilateur FBPano
par jean_debord Aujourd'hui à 11:24

» Problème de math
par braveen Aujourd'hui à 10:53

» A propos des attributs de fichier
par papydall Hier à 14:33

» Problème de math
par Marc37 Sam 21 Oct 2017 - 23:04

» I Love You
par papydall Sam 21 Oct 2017 - 19:22

» Un petit "coucou" à tous les Panoramiciens !
par mindstorm Sam 21 Oct 2017 - 17:06

» MARK_ON déclenche un événement ON_CLICK à la place de ...
par Jean Claude Mer 18 Oct 2017 - 18:08

» mise a jour calculatrice
par joeeee2017 Mer 18 Oct 2017 - 15:57

» [solved] 3D_LINE How to ?
par Jicehel Mer 18 Oct 2017 - 11:01

» Convertisseur de base 10 de 2 à 36
par gigi75 Mar 17 Oct 2017 - 18:49

» calculatrice avec touches movibles
par joeeee2017 Dim 15 Oct 2017 - 1:11

» CORTANA
par gigi75 Sam 14 Oct 2017 - 16:32

» Calculatrice
par Jean Claude Sam 14 Oct 2017 - 12:30

» KGF_dll - nouvelles versions
par Klaus Mar 10 Oct 2017 - 18:49

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Octobre 2017
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 astuce MARK_ON/OFF pour 'sub_menu'

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
silverman

avatar

Nombre de messages : 466
Age : 45
Localisation : Picardie
Date d'inscription : 19/03/2015

MessageSujet: astuce MARK_ON/OFF pour 'sub_menu'   Lun 15 Mai 2017 - 18:59

Bonjour à tous,

le pb consiste à retrouver si un 'sub_menu' a été 'MARK_ON/OFF' ou pas. Puisque 'checked' ne fonctionne pas avec les 'sub_menu', et comme il n'existe pas de fonction 'marked(N)', voici un exemple qui montre comment contourner ce pb;
3 méthodes différentes, 1 par menu pour illustrer les possibilités:
Code:
label clicA , clicB , clicC
dim mnu , mnu_clicked


main_menu 1

' menuA
sub_menu 2 : parent 2,1 : caption 2,"menuA"
sub_menu 3 : parent 3,2 : caption 3,"test1A"
sub_menu 4 : parent 4,2 : caption 4,"test2A"
sub_menu 5 : parent 5,2 : caption 5,"test3A"
sub_menu 6 : parent 6,2 : caption 6,"test4A"

' clic sur menuA
for mnu=3 to 6
   on_click mnu,clicA
next mnu
mark_sub_menu(6) :' un sous menu marqué par défaut




' menuB
sub_menu 12 : parent 12,1 : caption 12,"menuB"
sub_menu 13 : parent 13,12 : caption 13,"test1B"
sub_menu 14 : parent 14,12 : caption 14,"test2B"
sub_menu 15 : parent 15,12 : caption 15,"test3B"
sub_menu 16 : parent 16,12 : caption 16,"test4B"

' clic sur menuB
for mnu=13 to 16
   on_click mnu,clicB
next mnu
mark_sub_menu(16) :' un sous menu marqué par défaut




' menuC
sub_menu 22 : parent 22,1 : caption 22,"menuC"
sub_menu 23 : parent 23,22 : caption 23,"test2C"
sub_menu 24 : parent 24,22 : caption 24,"test2C"
sub_menu 25 : parent 25,22 : caption 25,"test3C"
sub_menu 26 : parent 26,22 : caption 26,"test4C"

' clic sur menuC
for mnu=23 to 26
   on_click mnu,clicC
next mnu



END
clicA:
   ' marquer des sous menus : façon CHECK
   mark_sub_menu(number_click)
   mnu_clicked=number_click
   caption 0,str$(mnu_clicked)
return



clicB:
   ' marquer des sous menus : façon OPTION
   for mnu=13 to 16
      if clicked(mnu)=1
         mark_on mnu
         mnu_clicked=mnu
      else
         mark_off mnu
      end_if
   next mnu
   caption 0,str$(mnu_clicked)
return



clicC:
   ' marquer des sous menus : façon OPTION + CHECK (1 seul à la fois ou aucun sous menu marqué)
   for mnu=23 to 26
      if clicked(mnu)=1
         mark_sub_menu(mnu)
         mnu_clicked=mnu
      else
         mark_off mnu
         marked(mnu)=0
      end_if
   next mnu
   caption 0,str$(mnu_clicked)
return



' sub
sub mark_sub_menu(N)
 if variable("marked")=0 then dim marked(10000)
   select marked(N)
      case 0 : marked(N)=1 : mark_on N
      case 1 : marked(N)=0 : mark_off N
   end_select
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

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

MessageSujet: Re: astuce MARK_ON/OFF pour 'sub_menu'   Lun 15 Mai 2017 - 22:00

Merci Silverman pour ce partage.

Au début je ne voyais pas où tu voulais en venir. Mais les commentaires du code m'ont aidés à comprendre. cheers
Ex:  pour le menu A ' marquer des sous menus : façon CHECK. cette option nous permet de cocher plusieurs menus (sans effacer "la coche" des autres options du menu).

Très astucieux.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7994
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Lun 15 Mai 2017 - 22:21

Perso, j' utilise une variable d' état% qui est mise à 1 si le menu est coché.
Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: astuce MARK_ON/OFF pour 'sub_menu'   

Revenir en haut Aller en bas
 
astuce MARK_ON/OFF pour 'sub_menu'
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» WinXP : Quelques astuces pour booster XP
» Trucs/Astuces pour fixer le GPS 276C dans un véhicule
» Ordinateur lent, 6 conseils pour l'accélérer.
» code pour inséré les anime (Fond transparent)
» Plugins Firefox pour sécuriser votre navigateur.

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: