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 |
|
|
| Problème lorsque j'arrive au END | |
| | Auteur | Message |
---|
Invité Invité
| Sujet: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 10:34 | |
| Comme je l'ai dis, je suis en train de faire un "déboggeur" (je ne sais pas si le mot existe, mais je l'emploi) pour Panoramic. Après bien des transformations pour m'adapter à différentes possibilités, j'ai pris le principe suivant: je recherche en premier tous les DIM, que je mets en commentaires (les instructions sur la même ligne à la suite sont remis devant), et je mets les déclarations sur la première ligne. C'est la seule méthode qui me permette de voir les variables sans y avoir d'erreur en visualisant une variable qui ne serait pas déclarée. Le programme fonctionne en regardant au pas à pas le programme à contrôler. Mais si je veux sauter le blocage ligne par ligne, le programme s'arrête à la rencontre du END avec le message suivant: (67) pas trouver de REPEAT correspondant. Je ne vois pas de détournement qui n'aurait pas de retour dans les divers sous programmes. Je ne vois pas pourquoi, lorsque je fais toute la chaine de contrôle, cela marche, mais lorsque j'arrête avant les contrôles pour retourner aux lignes suivantes, il y a problème. Je vais plusieurs programmes: un petit qui sert de teste et qui est déjà modifié, un deuxième pour être inclus dans le premier, et le programme provisoir qui fait les contôle. Celui-ci est un raccourcis du programme finale. Il n'y a pas les commandes lignes, etc... le programme teste (celui-ci c'est pour montrer comment il est au départ, sans plus) - Code:
-
' programme d'essai ' **TRON** label branche width 0,600 dim a% , a$ ,b%,b$ memo 1 :on_click 1,branche item_add 1,"voyon voir" #include "inclusion.bas" for a%=1 to 10 item_add 1,a% next a% message "nouvelle inclusion du même prg" #include "inclusion.bas" end
branche: message "click sur le memo" return le programme corrigé, à sauvegarder sous "debug.bas" - Code:
-
DIM q$,objeTron% : LABEL q,liste_variable:gosub liste_variable DIM a% , a$ ,b%,b$ ' programme d'essai q$="42":gosub q:' **TRON** q$="53":gosub q:label branche q$="64":gosub q:width 0,600 q$="75":gosub q:' dim a% , a$ ,b%,b$ q$="86":gosub q:memo 1 :on_click 1,branche q$="97":gosub q:item_add 1,"voyon voir" q$="108":gosub q:' #1 dépilé: #include "inclusion.bas" q$="11#1:1":gosub q:rem "ceci est un essai d'inclusion dans un autre programme" q$="12#1:2":gosub q:' et ne sert à rien q$="13#1:3":gosub q:message "inclusion réussi" q$="14#1:4":gosub q:' ==== FIN du programme #INCLUDE dépilé: inclusion.bas #1 ==== q$="159":gosub q:for a%=1 to 10 q$="1610":gosub q: item_add 1,a% q$="1711":gosub q:next a% q$="1812":gosub q:message "nouvelle inclusion du même prg" q$="1913":gosub q:' #2 dépilé: #include "inclusion.bas" q$="20#2:1":gosub q:rem "ceci est un essai d'inclusion dans un autre programme" q$="21#2:2":gosub q:' et ne sert à rien q$="22#2:3":gosub q:message "inclusion réussi" q$="23#2:4":gosub q:' ==== FIN du programme #INCLUDE dépilé: inclusion.bas #2 ==== q$="2414":gosub q:end
q$="2616":gosub q:branche: q$="2717":gosub q:message "click sur le memo" q$="2818":gosub q:return q_variable: select q_variable% case 1 : item_add objeTron%+9," a$ = "+a$ case 2 : item_add objeTron%+9," a% = "+ str$(a%) case 3 : item_add objeTron%+9," b$ = "+b$ case 4 : item_add objeTron%+9," b% = "+ str$(b%) end_select return liste_variable: dlist 200 item_add 200,"a$" item_add 200,"a%" item_add 200,"b$" item_add 200,"b%" return
le programme qui sera un include du précédent: à sauvegarder sous: "inclusion.bas" - Code:
-
rem "ceci est un essai d'inclusion dans un autre programme" ' et ne sert à rien message "inclusion réussi"
le programme lui-même (tout du moins la partie qui sert pour la démo) Au final, le nom de toutes les variables et labels sera revu pour éviter les problème avec le programme lui-même. C'est celui-ci qui sera exécuté Mettre tous les programmes dans le même dossier (le premier inutile il ne sert pas pour la démo) - Code:
-
DIM q$,objeTron% : LABEL q,liste_variable:gosub liste_variable DIM a% , a$ ,b%,b$ ' programme d'essai q$="42":gosub q:' **TRON** q$="53":gosub q:label branche q$="64":gosub q:width 0,600 q$="75":gosub q:' dim a% , a$ ,b%,b$ q$="86":gosub q:memo 1 :on_click 1,branche q$="97":gosub q:item_add 1,"voyon voir" q$="108":gosub q:' #1 dépilé: #include "inclusion.bas" q$="11#1:1":gosub q:rem "ceci est un essai d'inclusion dans un autre programme" q$="12#1:2":gosub q:' et ne sert à rien q$="13#1:3":gosub q:message "inclusion réussi" q$="14#1:4":gosub q:' ==== FIN du programme #INCLUDE dépilé: inclusion.bas #1 ==== q$="159":gosub q:for a%=1 to 10 q$="1610":gosub q: item_add 1,a% q$="1711":gosub q:next a% q$="1812":gosub q:message "nouvelle inclusion du même prg" q$="1913":gosub q:' #2 dépilé: #include "inclusion.bas" q$="20#2:1":gosub q:rem "ceci est un essai d'inclusion dans un autre programme" q$="21#2:2":gosub q:' et ne sert à rien q$="22#2:3":gosub q:message "inclusion réussi" q$="23#2:4":gosub q:' ==== FIN du programme #INCLUDE dépilé: inclusion.bas #2 ==== q$="2414":gosub q:end
q$="2616":gosub q:branche: q$="2717":gosub q:message "click sur le memo" q$="2818":gosub q:return q_variable: select q_variable% case 1 : item_add objeTron%+9," a$ = "+a$ case 2 : item_add objeTron%+9," a% = "+ str$(a%) case 3 : item_add objeTron%+9," b$ = "+b$ case 4 : item_add objeTron%+9," b% = "+ str$(b%) end_select return liste_variable: dlist 200 item_add 200,"a$" item_add 200,"a%" item_add 200,"b$" item_add 200,"b%" return
' ==============================================================================
' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= q: if objeTron%=0 objeTron%=50 label q2 , q4 , q5 , q6 , fin ,q_variable : dim q% ,qd% ,q_trace$ ,q_trace% ,key_sort% ,qq$ ,q_variable% ,q,q1% form objeTron%:width objeTron%,screen_x: height objeTron%,80:top objeTron%,screen_y-110 :' left objeTron%,200 command_target_is objeTron% edit objeTron%+1 :top objeTron%+1,height(objeTron%)-60:font_size objeTron%+1,12:width objeTron%+1,width(objeTron%)-120:left objeTron%+1,100:font_bold objeTron%+1:color objeTron%+1,222,215,181
alpha objeTron%+14:left objeTron%+14,5 :top objeTron%+14,height(objeTron%)-60:caption objeTron%+14,"Ligne:" edit objeTron%+15:left objeTron%+15,40:top objeTron%+15,height(objeTron%)-60: width objeTron%+15,60:font_size objeTron%+15,12:color objeTron%+15,255,223,33:font_color objeTron%+15,255,0,0:font_bold objeTron%+15
container_option objeTron%+2:top objeTron%+2,height(objeTron%)-90:width objeTron%+2,300:height objeTron%+2,30:left objeTron%+2,10 option objeTron%+3:parent objeTron%+3,objeTron%+2:caption objeTron%+3,"bloque" :width objeTron%+3,50:top objeTron%+3,8 option objeTron%+4:parent objeTron%+4,objeTron%+2:caption objeTron%+4,"continue":width objeTron%+4,60:left objeTron%+4,70 :top objeTron%+4,8 option objeTron%+5 :parent objeTron% +5,objeTron%+2:caption objeTron%+5 ,"boucle" :width objeTron%+5 ,50:left objeTron%+ 5,140:top objeTron%+ 5,8 option objeTron%+11:parent objeTron%+11,objeTron%+2:caption objeTron%+11,"ext-boucle":width objeTron%+11,80:left objeTron%+11,200:top objeTron%+11,8
scroll_bar objeTron%+6:left objeTron%+6,380:top objeTron%+6,height(objeTron%)-80:height objeTron%+6,15:min objeTron%+6,1:max objeTron%+6,2000 width objeTron%+6,width(objeTron%)-580:position objeTron%+6,500 check objeTron%+7:parent objeTron%+7,objeTron%:left objeTron%+7,300:width objeTron%+7,50:height objeTron%+7,20:caption objeTron%+7,"variables" top objeTron%+7,height(objeTron%)-80 button objeTron%+8:parent objeTron%+8,objeTron%:left objeTron%+8,width(objeTron%)-140:width objeTron%+8,50:height objeTron%+8,20:caption objeTron%+8,"STOP" top objeTron%+8,height(objeTron%)-80 form objeTron%+10:hide objeTron%+10:width objeTron%+10,600:height objeTron%+10,200:top objeTron%+10,screen_y - 300 :color objeTron%+10,255,223,33:border_hide objeTron%+10 list objeTron%+9:hide objeTron%+9:parent objeTron%+9,objeTron%+10:width objeTron%+9,width(objeTron%+10)-10:height objeTron%,150:top objeTron%+9,5:color objeTron%+9,231,235,239 font_size objeTron%+9,12:font_bold objeTron%+9:left ObjeTron%+9,5
dlist objeTron%+12:' mettre les numéros des variables, pour être relus au retour command_target_is 0 dlist objeTron%+13:' left objeTron%+13,300:width objeTron%+13,500:height objeTron%+13,500:font_size objeTron%+13,12:' remplace list 1 file_load objeTron%+13,"C:\TESTE\M_au _P_TRACE\debug.bas" q%=-1 :mark_on objeTron%+3 :on_click objeTron%+3,q5 :on_click objeTron%+4,q5 :on_click objeTron%+5,q5:on_click objeTron%+11,q5 on_click objeTron%+8,fin :on_click objeTron%+7,q6 command_target_is 0 end_if ' -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= set_focus objeTron%+6: show objeTron% : height objeTron%,80:top objeTron%,screen_y-110 if checked(objeTron%+7)=0 then hide objeTron%+10 ' ici il faudrait si variable, remettre les valeurs modifiées if checked(objeTron%+7)=1 and checked(objeTron%+3)=1 and count(objeTron%+12)>0 for qd%=1 to count(objeTron%+12) if numeric(item_read$(objeTron%+12,qd%))=1 then q_variable%=val(item_read$(objeTron%+12,qd%)) gosub q_variable next qd% height objeTron%+9,count(objeTron%+9)*22:height objeTron%+10,height(objeTron%+9)+10:top objeTron%+10,top(objeTron%)- height(objeTron%+10) clear objeTron%+12 repeat until scancode=0 or key_up_special=0 end_if
if instr(q$,chr$(1))>0 q=val(left$(q$, instr(q$,chr$(1))-1)) q_trace$=item_read$(objeTron%+13,q) q$=mid$(q$, instr(q$, chr$(1) )+1 ,20) else if numeric(q$)=1 then q=val(q$) end_if text objeTron%+15,q$ text objeTron%+1,mid$(q_trace$,instr(q_trace$,":gosub q:")+9,150) :display ' ---------------------------------- repeat gosub q5
until scancode=0 if key_up_special=3 then goto fin if q%=0 then return ' ---------------------------------- if scancode=13 then q%=-1:mark_on objeTron%+3:repeat:until scancode=0 if checked(objeTron%+7)=1 then gosub q6 if checked(objeTron%+3)=1 then q%=-1 if checked(objeTron%+4)=1 then q%=0 if checked(objeTron%+5)=1 then q%=1 if checked(objeTron%+11)=1 then q%=2 if clicked(objeTron%+8)=1 then goto fin if clicked(objeTron%+9)=1 then gosub q6 :' gosub q6 if q%=-1 then gosub q2 if q%=1 then gosub q4 return ' ============================================================================== q1: file_save 20,"copier_texte.txt" return ' ============================================================================== q2: q%=-1:key_sort%=0 repeat if clicked(objeTron%+8)=1 then key_sort%=3:exit_repeat if clicked(objeTron%+9)=1 then gosub q6 wait position(objeTron%+6) if clicked(objeTron%+8)=1 then key_sort%=3:exit_repeat if clicked(objeTron%+9)=1 then gosub q6 until scancode = 32 or key_up_special=3 or scancode=13 or key_sort%=3 if scancode=13 then q%=0:mark_on objeTron%+4 :repeat:until scancode=0 if key_up_special = 3 or key_sort%=3 then goto fin return ' ============================================================================== q4: q%=1 if instr(upper$(q_trace$),"UNTIL")>0 or instr(upper$(q_trace$),"NEXT")>0 or instr(upper$(q_trace$),"END_WHILE")>0 key_sort%=0 repeat if clicked(objeTron%+8)=1 then key_sort%=3:exit_repeat if key_up_special=3 then exit_repeat until scancode=32 or key_up_special=3 if clicked(objeTron%+9)=1 then gosub q6 repeat if clicked(objeTron%+8)=1 then key_sort%=3:exit_for until scancode=0 or key_up_special=3 end_if if key_sort%=3 or key_up_special=3 then goto fin return
q5: if checked(objeTron%+3)=1 then q%=-1 if checked(objeTron%+4)=1 then q%=0 if checked(objeTron%+5)=1 then q%=1 return q6: ' variable show objeTron%+10:show objeTron%+9:set_focus objeTron%+1:set_focus objeTron%+6 clear objeTron%+9 :sort 200 for qd% = count(200) to 1 step -1 if instr(q_trace$,item_read$(200,qd%))>0 q_variable%=qd%:item_add objeTron%+12,q_variable% gosub q_variable end_if next qd% item_add objeTron%+9,"--------------------------------------" height objeTron%+9,count(objeTron%+9)*22:height objeTron%+10,height(objeTron%+9)+10:top objeTron%+10,top(objeTron%)- height(objeTron%+10) return fin: stop
Si quelqu'un pouvait me dire pourquoi il y a problème. Si je ne contrôlait pas le programme avant le END, celui-ci fonctionne aussi, mais tous les programmes qui aurait des "inclusions" avant le END, ou qui fant un certain nombre de choses avant, n'aurait pas cette partie contrôlable. Comment cela fonctionne? au départ on a une ligne en bas de l'écran. Pour avancer pas à pas, il faut appuyer sur la barre d'espace. Le SPIN ici n'a pas réellement d'intéret pour ce programme (c'est seulement le réglage d'un wait dans le déroulement du pas à pas auto) si le check variable est clié, une fenêtre apparait et montre la valeur des variables avant que l'instruction ne soit exécuté. Si vous appuyez sur la barre vous sautez à l'instruction suivante, mais en laissant la barre appyée, les variables montrent les valeurs modifiées. en cliquant sur continu, le programme s'exécute normalement (seul le numéro de la ligne est montré) en cliquant sur boucle, le programme est arrêté jusqu'à la sortie de la boucle. Le coche ext/boucle, n'est pas codé. En cliquant sur stop, on arrête le programme qui permet de sortir d'une boucle infini. (si des fois quelqu'un veut bien intervenir) A votre bon coeur, Messieurs, Dames! Merci |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 13:27 | |
| Sans rentrer plus dans les détails, vérifie déjà ce que tu fais exactement lorsque tu arrives en pas à pas à la commande "end". Est-ce que ron programme tente de l'exécuter ? Si oui, as-tu exécuté un "end" auparavant ? Sinon, j'ai relevé le point suivant: peut-être un "exit_for" à la place d'un "exit_repeat" - Code:
-
q4: q%=1 if instr(upper$(q_trace$),"UNTIL")>0 or instr(upper$(q_trace$),"NEXT")>0 or instr(upper$(q_trace$),"END_WHILE")>0 key_sort%=0 repeat if clicked(objeTron%+8)=1 then key_sort%=3:exit_repeat if key_up_special=3 then exit_repeat until scancode=32 or key_up_special=3 if clicked(objeTron%+9)=1 then gosub q6 repeat if clicked(objeTron%+8)=1 then key_sort%=3:exit_for <<<<<========== exit_repeat ???? until scancode=0 or key_up_special=3 end_if if key_sort%=3 or key_up_special=3 then goto fin return
Je regarderai un peu plus en profondeur plus tard... | |
| | | Invité Invité
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 14:33 | |
| Merci pour avoir regardé. Le coup de exit_for pour repeat, je ne l'avais pas vu. Pour ce qui est du END, j'ai déjà fait l'essai avec des lignes normales sans le détour, et aussi en remettant en pas à pas avant d'arriver au END, ça ne change rien. J'ai déjà eu ce type d'erreur dans du codage normal en événementiel, mais en ayant auparavant été dans un sous programme pour faire un traitement particulier. Si je mets return après le label q:, il n'y a pas d'erreur. Il y a une chose qui provoque l'erreur et je ne vois pas quoi. Je viens de faire l'essai (si j'ai pas trop modifié les lignes:les lignes 112 à 115 avec: - Code:
-
repeat gosub q5 until scancode =0
en mettant ces lignes en commentaires, il n'y a plus l'erreur. J'ai un vrai problème avec ce programme: en cliquant sur les diverses coches, il ne se passe rien. Remarque c'est peut-être normal, vu que le END n'est pas rencontré. Mais alors comment régler si on ne peut pas cliquer? La boucle en question me permettait de prendre contrôle des clics Les lignes qui sont en q5, je viens de les mettes dans la boucle repeat/until en question, et je retrouve l'erreur, donc c'est là que le problème se pose. C'est dommage, j'ai fais des essais sur des gros programmes, mais alors que le contrôle partait après le END, et j'ai trouvé vraiment pratique. Si tu fais des essais en modifiant la partie qui ont les lignes détournées, il faut aussi faire les modifs sur le programme "debug.bas" Merci à toi. Là je ne pourrais pas regarder avant ce soir. A propos, en relisant ton post, c'est pas lorsqu'il est en pas à pas qu'il y a problème, c'est justement en mode continu. |
| | | Invité Invité
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 14:53 | |
| J'allais partir, et il m'est venu une idée, que j'ai essayé rapidement, et je crois qu'il faudrait peut-être y réfléchir. Pas vraiment le temps pour l'instant, et apparemment ça marche. Je mets rapidement la partie de code et je part, à toi de voir ce que tu en penses. - Code:
-
DIM q$,objeTron% : LABEL q,liste_variable,s:gosub liste_variable DIM a% , a$ ,b%,b$ :timer 95:on_timer 95, s : end s: timer_off 95:q$="42":gosub q:' **TRON** salutation |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 15:16 | |
| En effet, j'avais compris la condition à l'envers: le problème se pose bien en mode "continu". Alors, ça devient plus clair: Tu ne peux justement pas faire cela ! Avant le "end", on est en mode "ancien basic", et le "end" bascule en mode "évènementiel". Aucune instruction n'est exécutée automatiquement après un "end" ! Si tu étais dans une boucle "repeat...until" et le "end" est exécuté, alors Panoramic détecte à juste titre qu'il n'y a pas de clause de fin pour le repeat... Il faut absolument que tu traites ce problème autrement. Soit, tu détectes le "end" et tu le traites à part (mais je ne vous absolument pas comment cela pourrait se faire en mode continu), soit tu traites tout en mode évènementiel. Il faut donc que ton programme de debug s'initialise, exécute son propre "end", puis tu prévois un bouton genre "démarrer debug" avec un on_click sur le début du code à debugger (ne pas oublier le return correspondant tout à la fin). Et alors, tu peux détecter le "end" du programme à débugger et le mettre en commentaire (ou l'ignorer), mais surtout ne pas l'exécuter. Avec ta technique, tu est entré en conflit avec la logique interne de Panoramic. Rappelle-toi: - Code:
-
label start_debug dim i% button 1 : top 1,10 : left 1,10 : caption 1,"Start debug" : on_click 1,start_debug i% = i% + 1 message "Mode ancien: "+str$(i%) end i% = i% + 1 message "Ce message ne doit pas apparaître: "+str$(i%)
start_debug: i% = i% + 1 message "Démarrage du debug: "+str$(i%)
return
| |
| | | Invité Invité
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 17:12 | |
| MErci Klaus J'ai pu me libérer plus tôt. Alors voilà. j'ai donc fait l'essai avec on timer pour sauter le end que je fais au départ. Ensuite je l'arrète et je le supprime puisqu'a plus l'obligation d'être. Pour ce qui est du END, il n'y a rien à faire. Le END arrête simplement le programme pour attendre les clics. En procédant comme je l'ai dit, je suis en mode événement. Ensuite des END, il peut y en avoir plusieurs dans un programme, cela n'est pas dérangeant. D'ailleurs fait l'essai, à la place du stop à la fin, tu mets END. Cela arrète le programme, et ne met pas le message. En faisant ainsi, cela ne t'empêches pas de repartir. Il y a on_click sur le memo, et si tu cliques, le programme continu. Donc l'idée est bonne, et peut-être cela est une idée à creuser pour d'autre programme.
Ton avis sur ce que je viens de dire m'intéresse. Je vais pouvoir revoir la suite. (ce soir, chaque chose en son temps) |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 18:07 | |
| Effectivement, tu peux mettre plusieurs "end". Chaque fois, le contrôle repasse à Panoramic, et le programme ne continue pas en ligne, et c'est bien ça le problème. S'il y a un "repeat" avant le "end",Panoramic rebouclera dessus lorsqu'il rencontrera le 'until", puis retombera sur le end, etc. J'ai fait une petite démo pour voir l'effet: - Code:
-
label suite dim i% message "avant end" button 1 : top 1,10 : left 1,10 : caption 1,"Suite" : on_click 1,suite repeat message "Dans la boucle "+str$(i%) end
message "ne peut pas arriver"
suite: message "suite: "+str$(i%) i% = i% + 1 until i%>4 return
Dans tous les cas, après un "end", il faut une action "utilisateur" pour relancer, ou alors peut-être un évènement timer. Si tu es en pas à pas, tu as ton évènement utilisateur - pas de problème. En continu, il faudrait, juste avant d'exécuter le "end", lancer un timer avec, disons 100 ms et on évènement qui fate ce que tu fais lorsque tu tapes espace (si j'ai bien compris) pour exécuter la ligne suivante... enfin, c'est peut-être une piste. | |
| | | Invité Invité
| Sujet: Re: Problème lorsque j'arrive au END Mer 8 Sep 2010 - 19:46 | |
| Donc on est d'accord. Je suis en colère. Je voulais remettre à jour les différents programmes pour les essais en ayant la bonne numérotation des lignes, j'ai plusieurs onglets d'ouverts, et je prends un programme pour en modifier un autre, etc..., et je ne peux sauvegarder les modifications, sans être certains que les modifications sont amélioration des essais précédentes. Et évidemment l'éditeur s'ait fermer sans que je sache pourquoi et tout est à reprendre. Peut-être qu'un jour Jack comprendra un jour qu'on puisse en avoir mare de ces blocage pour un oui ou un non, où on perd tout. L'éditeur à onglet est une amélioration, mais la fermeture intempestif, ferme tout les programmes à la fois. Il n'y a pas moyen pour avoir quelque chose de plus stable. J'essaye bien d'en refaire un, mais refaire ou reprendre à chaque fois la même chose, ne me facilite pas le travail, et ça m'énerve, et ça me prend la tête, et encore le pire ça me décourage. J'avance à rien avec cet éditeur. Mes idées n'avancent pas.
Et puis ne répondez pas à cela, ça n'avancera à rien. J'aurai aimé, alors que le code que j'ai mis est un raccourcis, et n'est pas fini, avoir un avis sur le résultat. Une fois fini, on prend l'executable, on répond à la question de savoir quel numéro on peut donner aux objets, et après l'avoir chargé depuis le disque, on a son propre programme avec les outils de débogage. Pour l'instant je ne peux que m'arracher les cheveux. Par la suite depuis l'éditeur que j'ai commencé, il suffira d'appuyer sur un bouton pour avoir la même chose.
En voilà du baratin. |
| | | Contenu sponsorisé
| Sujet: Re: Problème lorsque j'arrive au END | |
| |
| | | | Problème lorsque j'arrive au END | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |