Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| Un autre editeur particulier | |
| | |
Auteur | Message |
---|
pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Un autre editeur particulier Lun 21 Sep 2015 - 1:43 | |
| très tôt pour m’occuper et mi douiller ce source ce n'est qu'une ébauche qui vas être utile a certain un ! minibug!!!! pour gpp je vous laisse le découvrir - Code:
-
label nomme dim nomme$,num% , num2%, pare%
width 0,600 : height 0,60 left 0,300
main_menu 100
sub_menu 110 : parent 110,100 : caption 110,string$(10," ") on_click 110,nomme sub_menu 120 : parent 120,100 : caption 120,string$(10," ") : inactive 120 on_click 120,nomme sub_menu 130 : parent 130,100 : caption 130,string$(10," ") : inactive 130 on_click 130,nomme sub_menu 140 : parent 140,100 : caption 140,string$(10," ") : inactive 140 on_click 140,nomme sub_menu 150 : parent 150,100 : caption 150,string$(10," ") : inactive 150 on_click 150,nomme sub_menu 160 : parent 160,100 : caption 160,string$(10," ") : inactive 160 on_click 160,nomme sub_menu 170 : parent 170,100 : caption 170,string$(10," ") : inactive 170 on_click 170,nomme end
nomme:
num%=number_click pare%=object_parent(num%)
if object_type(pare%)=12 off_click num% pare%=num% active num%+10 end_if
if message_input("Edit Menu", "Sub_Menu" , "")=1 nomme$=message_text$ caption num%,nomme$ num2%=num% else return end_if
num%=num%+1 sub_menu num% : parent num%,pare% : caption num%,string$(10," ") on_click num%,nomme return en lisant le code vous allez tout de suite comprendre de quoi il s'agit bonne nuit | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 2:06 | |
| Belle idée de construction de menus de façon interactive ! Bravo pour l'idée.
Dans la réalisation, il y a un petit truc à revoir: 1. clique sur la case qui correspond au premier menu (initialement sans libellé) 2. saisis le libellé "aaa" pour ce menu 3. re-clique sur "aaa" 4. saisie le libellé "bbb" pour le sous-menu dont la ligne vide s'affiche 5. clique sur "bbb" ==> crash: objet déjà défini en ligne 45.
Je pense qu'il faut utiliser une variable indépendente pour les numéros des sous-menus à créer. Ta variable num% est très bien pour ça. Mais je crois qu'il y a un mélange avec la variable num2% qui est chargée mais jamais utilisée...
Essaie de créer juste me main-menu et le premier sous-menu les sous-menu, afin que quelque chose soit cliquable à l'écran. Puis, en fonction des objets cliqués, tu fais systématiquement num%=num%+1 et tu crées le sous-menu correspondant, ou tu saisis le libellé du sous-menu cliqué.
| |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 7:25 | |
| ok klaus je vais continue a developé
num2% est une variable qui etait en réserve pour ça justement! je l'ai fait a l'arrache cette nuit car l'idée m’était venu avec d'autre essai que j'ai fait auparavantet qui n'ont pas abouti merci
Dernière édition par pascal10000 le Lun 21 Sep 2015 - 8:40, édité 1 fois | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 7:39 | |
| Très intéressant Pascal ! Bien que j'ai aussi une petite idée derrière la tête, je vais suivre ton approche avec grand intérêt ! N'oublies pas les sous menu dans les menus... ( et les sous menu dans les sous menu, etc...) Bon courage | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 8:36 | |
| sa y est le bug a disparu celui signalé par klaus voici la mise a jour - Code:
-
label nomme,renomme dim nomme$,num% , num2%, pare%
width 0,600 : height 0,60 left 0,300
main_menu 100
sub_menu 110 : parent 110,100 : caption 110,string$(10," ") on_click 110,nomme sub_menu 120 : parent 120,100 : caption 120,string$(10," ") : inactive 120 on_click 120,nomme sub_menu 130 : parent 130,100 : caption 130,string$(10," ") : inactive 130 on_click 130,nomme sub_menu 140 : parent 140,100 : caption 140,string$(10," ") : inactive 140 on_click 140,nomme sub_menu 150 : parent 150,100 : caption 150,string$(10," ") : inactive 150 on_click 150,nomme sub_menu 160 : parent 160,100 : caption 160,string$(10," ") : inactive 160 on_click 160,nomme sub_menu 170 : parent 170,100 : caption 170,string$(10," ") : inactive 170 on_click 170,nomme end
nomme:
num%=number_click pare%=object_parent(num%)
if object_type(pare%)=12 off_click num% pare%=num% active num%+10 end_if
gosub renomme
num%=num%+1
if num%<>num2% sub_menu num% : parent num%,pare% : caption num%,string$(10," ") end_if
num2%=num% on_click num2%,renomme on_click num%,nomme return
renomme: if message_input("Edit Menu", "Sub_Menu" , "")=1 nomme$=message_text$ caption num%,nomme$ else return end_if
return | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 8:52 | |
| Oui, c'est très malin. Par contre bien sûr après il faut blinder un peu comme par exemple si on reclic sur un élément déjà définit pour soit l'empêcher soit gérer l'insertion avant l'objet sélectionné et éviter ainsi le message d'erreur indiquant que l'objet est déjà définit. | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 9:29 | |
| Bonjour à tous, Il y a très longtemps, j'avais fait ça: (attention aux répertoires créer automatiquement) - Code:
-
dim i,j,m,n,LB$,LABEL$,CP$,LIGNE$,SEG$,F$,MOT$,rep$ label init,ouvre,sauve,quit,edite,valide,annule,faitcode,modif rep$="c:\mesprog":if dir_exists(rep$)=0 then dir_make rep$ rep$="c:\mesprog\planiform":if dir_exists(rep$)=0 then dir_make rep$ rep$="c:\mesprog\planiform\menus":if dir_exists(rep$)=0 then dir_make rep$
width 0,1024:height 0,728:left 0,(screen_x-width(0))/2:top 0,(screen_y-height(0)-40)/2 main_menu 1 sub_menu 2:parent 2,1:caption 2,"Fichier" sub_menu 3:parent 3,2:caption 3,"Nouveau":on_click 3,init sub_menu 4:parent 4,2:caption 4,"Ouvrir":on_click 4,ouvre sub_menu 5:parent 5,2:caption 5,"Sauver":on_click 5,sauve sub_menu 6:parent 6,2:caption 6,"Quitter":on_click 6,quit
memo 8:width 8,width(0)-400:height 8,height(0)-58:bar_both 8:font_name 8,"Fixedsys" alpha 9:left 9,700:top 9,10:font_name 9,"Consolas":font_bold 9:font_size 9,12 alpha 10:left 10,700:top 10,60:font_name 10,"Consolas":font_bold 10:font_size 10,12 combo 11:left 11,800:top 11,60 alpha 12:left 12,700:top 12,110:font_name 12,"Consolas":font_bold 12:font_size 12,12 edit 13:left 13,800:top 13,110:on_change 13,edite alpha 14:left 14,700:top 14,160:font_name 14,"Consolas":font_bold 14:font_size 14,12 edit 15:left 15,800:top 15,160:on_change 15,edite button 16:left 16,700:top 16,210:font_name 16,"Verdana":font_bold 16:caption 16,"VALIDER":on_click 16,valide button 17:left 17,850:top 17,210:font_name 17,"Verdana":font_bold 17:caption 17,"ANNULER":on_click 17,annule list 18:left 18,625:top 18,270:width 18,375:height 18,400:on_double_click 18,modif alpha 19:left 19,700:top 19,250:caption 19,"Double clic pour modifier un sub_menu" gosub init end
modif: ' ISOLER N° DU SUB_MENU SEG$=item_index$(18):SEG$=right$(SEG$,len(SEG$)-9) j=instr(SEG$,":"):n=val(left$(SEG$,j-1)):caption 9,"Sub_Menu "+str$(n) ' ISOLER LE N° DU PARENT SEG$=mid$(SEG$,j+1,len(SEG$)):j=instr(SEG$,","):SEG$=mid$(SEG$,j+1,len(SEG$)) j=instr(SEG$,":"):MOT$=left$(SEG$,j-1) ' et afficher le nom du parent + son n° for i=1 to count(11) if val(right$(item_read$(11,i),3))=val(MOT$) then text 11,item_read$(11,i) next i ' ISOLER LE CAPTION SEG$=mid$(SEG$,j+1,len(SEG$)):j=instr(SEG$,chr$(34)):SEG$=mid$(SEG$,j+1,len(SEG$)) j=instr(SEG$,chr$(34)):CP$=left$(SEG$,j-1):SEG$=mid$(SEG$,j+1,len(SEG$)):text 13,CP$ ' ISOLER LE LABEL text 15,"":if SEG$<>"" then j=instr(SEG$,","):LB$=mid$(SEG$,j+1,len(SEG$)):text 15,LB$ m=1 return
faitcode: clear 8 item_add 8,"label "+LABEL$:item_add 8,"":item_add 8,"main_menu 1" for i=1 to count(18):item_add 8,item_read$(18,i):next i item_add 8,"":item_add 8,"end":item_add 8,"" SEG$=LABEL$:i=instr(SEG$,",") while i>0 LB$=left$(SEG$,i-1):item_add 8,LB$+":":item_add 8,"return":item_add 8,"" SEG$=mid$(SEG$,i+1,len(SEG$)):i=instr(SEG$,",") end_while if SEG$<>"" then item_add 8,SEG$+":":item_add 8,"return" return
valide: if text$(11)="" then return if LB$<>"" then LABEL$=LABEL$+","+LB$:if left$(LABEL$,1)="," then LABEL$=right$(LABEL$,len(LABEL$)-1) LIGNE$="sub_menu "+str$(n)+":parent "+str$(n)+","+str$(val(right$(text$(11),3)))+":caption "+str$(n)+","+chr$(34)+CP$+chr$(34) if LB$<>"" then LIGNE$=LIGNE$+":on_click "+str$(n)+","+LB$ if m=0 item_add 18,LIGNE$:gosub faitcode item_add 11,CP$+" "+str$(n):n=n+1:caption 9,"Sub_Menu "+str$(n) else item_insert 18,item_index(18),LIGNE$:item_delete 18,item_index(18):LABEL$="" clear 11:item_add 11,"Main_menu 1" for i=1 to count(18) SEG$=item_read$(18,i):SEG$=right$(SEG$,len(SEG$)-9) j=instr(SEG$,":"):MOT$=left$(SEG$,j-1):SEG$=mid$(SEG$,j+1,len(SEG$)) j=instr(SEG$,chr$(34)):SEG$=mid$(SEG$,j+1,len(SEG$)) j=instr(SEG$,chr$(34)):CP$=left$(SEG$,j-1):CP$=CP$+" "+MOT$:item_add 11,CP$ while j>0 SEG$=mid$(SEG$,j+1,len(SEG$)):j=instr(SEG$,",") end_while if SEG$<>"" then LABEL$=LABEL$+SEG$+"," next i if LABEL$<>"" then LABEL$=left$(LABEL$,len(LABEL$)-1) gosub faitcode:n=count(18)+2:caption 9,"Sub_Menu "+str$(n) m=0 end_if annule: text 11,"":text 13,"":text 15,"":LB$="":CP$="" return
ouvre: gosub init open_dialog 7:dir_dialog 7,rep$:filter 7,"fichier bas|*.bas" F$=file_name$(7):delete 7 if F$<>"_" file_load 8,F$ for i=1 to count(8) if left$(item_read$(8,i),5)="label" then LABEL$=item_read$(8,i):LABEL$=right$(LABEL$,len(LABEL$)-6) if left$(item_read$(8,i),8)="sub_menu" item_add 18,item_read$(8,i) SEG$=item_read$(8,i) j=instr(SEG$,chr$(34)):SEG$=mid$(SEG$,j+1,len(SEG$)) j=instr(SEG$,chr$(34)):MOT$=left$(SEG$,j-1) SEG$=item_read$(8,i) SEG$=right$(SEG$,len(SEG$)-9):j=instr(SEG$,":") MOT$=MOT$+" "+left$(SEG$,j-1):item_add 11,MOT$ end_if next i gosub faitcode:n=count(18)+2:caption 9,"Sub_Menu "+str$(n):LB$="" end_if return
sauve: save_dialog 7:dir_dialog 7,rep$:filter 7,"fichier bas|*.bas" F$=file_name$(7):if right$(F$,4)<>".bas" then F$=F$+".bas" if file_exists(F$)=1 beep_exclamation if message_warning_yes_no("Le fichier "+F$+" existe déjà dans le répertoire!"+chr$(10)+chr$(13)+" Désirez-vous le remplacer?")=1 file_read_only_off F$:file_delete F$ else F$="_":delete 7:goto sauve end_if end_if if F$<>"_.bas" then file_save 8,F$ delete 7 return
init: n=2:caption 9,"Sub_Menu "+str$(n):caption 10,"Parent":caption 12,"Caption":caption 14,"Label":LB$="":LABEL$="" clear 8:clear 11:clear 18:text 11,"":text 13,"":text 15,"":item_add 11,"Main_menu 1":return
edite: texte(number_change,len(text$(number_change))) return sub texte(ed,curs) text ed,text$(ed):caret_position ed,curs if ed=13 then CP$=text$(ed) if ed=15 then LB$=text$(ed) end_sub
quit: terminate Ça pourrait peut-être vous inspirer ou bien vous aider? A+ | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 9:58 | |
| oui bignono intéressant ton p'tit programme | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 10:01 | |
| Oui, intéressant ton programme Pascal1000. C'est à suivre.... Salut Bignono... A+ | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 19:39 | |
| La suite! - Code:
-
label nomme,renomme dim nomme$, spac$, num%, num2%, pare% spac$="
width 0,600 : height 0,60 left 0,400 hide 0 main_menu 100
sub_menu 110 : parent 110,100 : caption 110,string$(10," ") on_click 110,nomme sub_menu 120 : parent 120,100 : caption 120,string$(10," ") : inactive 120 on_click 120,nomme sub_menu 130 : parent 130,100 : caption 130,string$(10," ") : inactive 130 on_click 130,nomme sub_menu 140 : parent 140,100 : caption 140,string$(10," ") : inactive 140 on_click 140,nomme sub_menu 150 : parent 150,100 : caption 150,string$(10," ") : inactive 150 on_click 150,nomme sub_menu 160 : parent 160,100 : caption 160,string$(10," ") : inactive 160 on_click 160,nomme sub_menu 170 : parent 170,100 : caption 170,string$(10," ") : inactive 170 on_click 170,nomme
form 300 : caption 300,"Source" memo 310 : full_space 310 parent 310,300 show 0
item_add 310,"Main_Menu 100" item_add 310,"" end
nomme:
num%=number_click pare%=object_parent(num%)
if object_type(pare%)=12 off_click num% pare%=num% if num%+10<180 then active num%+10 end_if
gosub renomme
num%=num%+1
if num%<>num2% sub_menu num% : parent num%,pare% : caption num%,string$(10," ") end_if
num2%=num% on_click num2%,renomme on_click num%,nomme return
renomme: if message_input("Edit Menu", "Sub_Menu" , "")=1 nomme$=message_text$ caption num%,nomme$
item_add 310,"Sub_Menu "+str$(num%) item_add 310,"Parent "+str$(num%)+","+str$(object_parent(num%)) item_add 310,"Caption "+str$(num%)+","+spac$+nomme$+spac$
if nomme$<>"-" item_add 310,"On_Click "+str$(num%)+"," item_add 310,"" else item_add 310,"" end_if
else return end_if
return n'oublier pas pour faire une barre de séparation il faut comme caractère un moin "-" du pavé numéric A suivre | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 22:12 | |
| Ça prend forme mais il manque toujours une partie de l'arborescence... Les fameux sous menu dans les sous menu dans les sous menu... Bon courage... | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 22:21 | |
| je cherche minibug c'est cette partie là la plus compliqué a géré et a mettre au point | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Lun 21 Sep 2015 - 22:28 | |
| Et oui je sais pascal !! C'est aussi la ou j'ai buté durant plusieurs semaines dans mon menu objet de GPP... Le principe est le même. Pour résoudre le problème, j'ai mis en place des fichiers de chaque parent ou j'inclus tous les objets qui appartiennent au parent. Sinon il y a le principe d'un tableau ou tu indiques le numero de l'objet et son parent. et tu testes a chaque fois dans ton tableau ou tu en es ! Pas simple n'est ce pas ? | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 14:00 | |
| Je pense que la solution est dans ces quelques lignes : - Code:
-
DIM nomme$ , num% , parent% , selection% LABEL saisie
WIDTH 0,600 : HEIGHT 0,60 : LEFT 0,400 : MAIN_MENU 10 : num%=11 SUB_MENU num% : PARENT num%,10 : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END
saisie: selection%=NUMBER_CLICK : OFF_CLICK selection% : parent%=OBJECT_PARENT(selection%) IF message_input("Edit Menu", "Sub_Menu" , "")=1 nomme$=MESSAGE_TEXT$ : CAPTION selection%,nomme$ IF OBJECT_TYPE(parent%)=12 SUB_MENU num% : PARENT num%,10 : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 SUB_MENU num% : PARENT num%,selection% : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END_IF IF OBJECT_TYPE(parent%)=13 SUB_MENU num% : PARENT num%,parent% : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 SUB_MENU num% : PARENT num%,selection% : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END_IF END_IF RETURN | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 14:17 | |
| | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 14:22 | |
| yes bravo minibug la voila la solution tant convoité t un bon!!!!
je t'invite si tu veut a te rendre dans webdaw pour essaye editbas cela te donnera des idées pour gpp
panoramic@pascal10000 id: panoramic123 | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 15:12 | |
| Je n'ai pas les DLL utils.dll , form.dll ... !! PS : OK c'est récupéré. Pas mal l'interface, effectivement. Je regarde d'un peu plus près tout ca... | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 18:48 | |
| Bonsoir, J'émet un bémol au code de Minibug. Il fonctionne, mais il présente un inconvénient majeur: il y a systématiquement un enfant crée en même temps qu'un SUB_MENU. Ce qui a pour conséquence d'avoir le signe > après le nom du SUB_MENU. Le menu est sans fin. Mais la voie est bonne... PS: on peut aussi faire l'économie de trois variables. - Code:
-
DIM num% LABEL saisie
WIDTH 0,600 : HEIGHT 0,60 : LEFT 0,400 : MAIN_MENU 10 : num%=11 SUB_MENU num% : PARENT num%,10 : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END
saisie: OFF_CLICK NUMBER_CLICK : caption 0,str$(OBJECT_PARENT(NUMBER_CLICK)) IF message_input("Edit Menu", "Sub_Menu" , " ")=1 CAPTION NUMBER_CLICK,MESSAGE_TEXT$ IF OBJECT_TYPE(OBJECT_PARENT(NUMBER_CLICK))=12 SUB_MENU num% : PARENT num%,10 : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 SUB_MENU num% : PARENT num%,NUMBER_CLICK : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END_IF IF OBJECT_TYPE(OBJECT_PARENT(NUMBER_CLICK))=13 SUB_MENU num% : PARENT num%,OBJECT_PARENT(NUMBER_CLICK) : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 SUB_MENU num% : PARENT num%,NUMBER_CLICK : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END_IF END_IF RETURN A plus. | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 19:22 | |
| jean claude! effectivement mais tant que on click pas dessus il n'y a pas de risque! et un autre aussi renommer son papa mais c mieux que rien
Dernière édition par pascal10000 le Mar 22 Sep 2015 - 19:24, édité 1 fois | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Mar 22 Sep 2015 - 19:23 | |
| Bien vu Jean Claude pour les variables ! Concernant les menus enfants, ils sont nécessaires a la création. Une fois le menu généré il est facile de supprimer tous les objets du menu qui correspondent a STRING$(10," ") par un DELETE sur ces objets avec un petit test. Et donc là plus de ">" qui restent. Cela est juste vrai lors de la création du menu ! @Pascal : On s'est croisé, LOL ! | |
| | | Jean Claude
Nombre de messages : 5950 Age : 70 Localisation : 83 Var Date d'inscription : 07/05/2009
| Sujet: Re: Un autre editeur particulier Mer 23 Sep 2015 - 7:56 | |
| Salut à tous, Comme solution je propose ça: - Code:
-
DIM num%,num_main_menu%,n% LABEL saisie
WIDTH 0,600 : HEIGHT 0,60 : LEFT 0,400 : MAIN_MENU 10 : num_main_menu%=10 : num%=11 SUB_MENU num% : PARENT num%,10 : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END
saisie: OFF_CLICK NUMBER_CLICK : caption 0,str$(OBJECT_PARENT(NUMBER_CLICK)) IF message_input("Edit Menu", "Sub_Menu" , " ")=1 CAPTION NUMBER_CLICK,MESSAGE_TEXT$ IF message_confirmation_yes_no("Voulez-vous continuer votre menu ?")=1 IF OBJECT_TYPE(OBJECT_PARENT(NUMBER_CLICK))=12 SUB_MENU num% : PARENT num%,10 : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 SUB_MENU num% : PARENT num%,NUMBER_CLICK : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END_IF IF OBJECT_TYPE(OBJECT_PARENT(NUMBER_CLICK))=13 SUB_MENU num% : PARENT num%,OBJECT_PARENT(NUMBER_CLICK) : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 SUB_MENU num% : PARENT num%,NUMBER_CLICK : CAPTION num%,STRING$(10," ") : ON_CLICK num%,saisie : num%=num%+1 END_IF ELSE FOR n%=num_main_menu%+1 to num%-1 IF CAPTION$(n%)=STRING$(10," ") THEN DELETE n% NEXT n% END_IF END_IF RETURN
A+ | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Mer 23 Sep 2015 - 11:53 | |
| oui jean claude c'est une idée mais pas très esthétique la boite de dialogue cela en fait 2 simultané je retiens ton idée quand même
y a un hic les enfants peuvent devenir des parents en faisant un essai deux numéros ce sont croisés et un sous menu a disparu
j'ai trouver une solution que je tente de mettre au point
toute vos idées seront les bien venu et ont peut invité ce défi à tout les panoramicien a trouver la solution | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Mer 23 Sep 2015 - 11:57 | |
| - Citation :
- y a un hic les enfants peuvent devenir des parents
en faisant un essai deux numéros ce sont croisés et un sous menu a disparu Comment cela peut il être possible, puisqu'il y a un numéro d'objet différent pour chaque ? !!! | |
| | | pascal10000
Nombre de messages : 812 Localisation : Troyes Date d'inscription : 05/02/2011
| Sujet: Re: Un autre editeur particulier Mer 23 Sep 2015 - 12:38 | |
| bjr minibug
ce fut le menu enfant (deroulant) du 1er item qui a disparu ben je ne peut pas te l'expliqué j'ai refait d'autre test et cela ne c'est plus reproduit en essayant de refaire la même manœuvre je ne sais pas comment j'ai fait mon compte! alors gros mystère!!!! | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Un autre editeur particulier Mer 23 Sep 2015 - 13:15 | |
| Le NUMBER_CLICK a la place d"une variable est peut-être la source du problème... Je réfléchis a une autre manière de faire ou l'on crée les objets les uns après les autres sans passer par des sélections multiples et inutiles. C'est Jean Claude qui va être content !! | |
| | | Contenu sponsorisé
| Sujet: Re: Un autre editeur particulier | |
| |
| | | | Un autre editeur particulier | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |