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 |
|
|
| Aide Panoramic sur le bureau | |
| | Auteur | Message |
---|
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 15:31 | |
| Le post de Nardo (extraction des mots-clés) me fait penser à mon petit programme d'aide Panoramic accessible directement depuis une icône du bureau. Il est composé de deux exécutables: Aide.exe et Objets.exe, le second étant appelé par le premier. Cette aide (liste des mots-clés avec leur développement) est entièrement extraite de l'Editeur Panoramic. A chaque lancement, il y a vérification de la date de l'éditeur panoramic. Si cette date est nouvelle (nouvelle version), il y a reconstitution complète de la liste des mots-clés. Pour ce faire, l'éditeur Panoramic est installé systématiquement dans Program Files\Panoramic_Editor (et non pas comme proposé à l'installation dans un répertoire portant le nom de la version en cours), donc toujours au même endroit. Il faut donc compiler le deux programmes, Aide et Objets, et installer Aide.exe avec une icône sur le bureau. Il faut avoir installé quelque part le programme de 'hack' ResHacker.exe (voir à côté chez Nardo), et comme d'habitude vérifier et/ou rectifier les chemins d'accès qui sont tous en tête du module Aide. Le module AIDE: - Code:
-
DIM a$, d$, ra$, rm$, f$, fz$, fl$, fd$, s$, v$, DatPano$, Edipan$, ResHacker$, Res_params$ DIM i%, w0, h0, wl, hl, wf, ncl, nl, k%, fnm$, obj$ DIM fbat$, fm$, nlong$, ncourt$
LABEL Fin, Detol, Ecritom, Titro, Detail, Reinit, Objets, Nmc, Nomcourt
' -------------------------------- CHEMINS A AJUSTER ! ------------------------ fd$ = "C:\Temp\Dir.tmp": ' *** à ajuster (temporaire) fbat$ = "C:\Temp\Nomcourt.bat": ' *** à ajuster (temporaire) fm$ = "C:\Temp\temp": ' *** à ajuster (temporaire) ra$ = "C:\Langages\Panoramic\": ' répertoire des sources IF DIR_EXISTS(ra$) = 0 MESSAGE "Chemin des sources Panoramic non trouvé ! (variable ra$)" TERMINATE END_IF Edipan$ = "C:\Program Files\Panoramic Editor\PANORAMIC_EDITOR.exe" IF FILE_EXISTS(Edipan$) = 0 Edipan$ = "C:\Program Files (x86)\Panoramic Editor\PANORAMIC_EDITOR.exe": ' sous Windows7 IF FILE_EXISTS(Edipan$) = 0 MESSAGE "Éditeur Panoramic non trouvé ! (variable Edipan$)" TERMINATE END_IF END_IF nlong$ = Edipan$: GOSUB Nomcourt: Edipan$ = ncourt$ ResHacker$ = "C:\UTIL\ResHacker.exe": ' chemin de Reshacker IF FILE_EXISTS(ResHacker$) = 0 MESSAGE "Utilitaire ResHacker.exe non trouvé ! (variable ResHacker$)" TERMINATE END_IF obj$ = ra$ + "objets.exe": ' aide-mémoire des objets Panoramic rm$ = ra$ + "Manuel": ' répertoire des fichiers d'aide IF DIR_EXISTS(rm$) = 0 THEN DIR_MAKE rm$ rm$ = rm$ + "\" fz$ = rm$ + "ppp.res": ' fichier résultat de ResHacker fl$ = rm$ + "Listmc.lst": ' liste brute fnm$ = "http://panoramic-language.pagesperso-orange.fr/French/HISTORY.htm": ' forum
DatPano$ = rm$ + "Datedi.dat": ' date de la version Editeur courante
Res_params$ = " -extract "+Edipan$+", "+fz$+", RCData, KEYWORDS, 1036" ' ------------------------------------------------------------------------------ w0 = 800: h0 = SCREEN_Y-100 WIDTH 0, w0: HEIGHT 0, h0: CAPTION 0, " - ÉDITEUR PANORAMIC: MANUEL DE RÉFÉRENCE -" wl = 200: hl = h0-60 LIST 10: TOP 10, 0: LEFT 10, 5: WIDTH 10, wl: HEIGHT 10, hl ON_CLICK 10, Detail wf = w0-wl-30 LIST 11: TOP 11, 20: LEFT 11, wl+10: WIDTH 11, wf: HEIGHT 11, hl-25 FONT_NAME 11, "Bitstream Vera Sans Mono": FONT_SIZE 11, 10: ' FONT_BOLD 11 ncl = INT(wf/8)-1 COLOR 11, 255,255,220 LIST 12: TOP 12, 0: LEFT 12, wl+10: WIDTH 12, wf: HEIGHT 12, 25 FONT_NAME 12, "Bitstream Vera Sans Mono": FONT_SIZE 12, 12: FONT_BOLD 12 COLOR 12, 255,255,220 MAIN_MENU 15 SUB_MENU 16: PARENT 16, 15: CAPTION 16, "Réinit": ON_CLICK 16, Reinit ' SUB_MENU 19: PARENT 19, 16: CAPTION 19, "Reconstituer la liste": ON_CLICK 19, Reinit SUB_MENU 17: PARENT 17, 15: CAPTION 17, "Objets": ON_CLICK 17, Objets SUB_MENU 18: PARENT 18, 15: CAPTION 18, "Historique": ON_CLICK 18, Nmc
EXECUTE_WAIT "Cmd.exe /c DIR " + Edipan$ + " >" + fd$ FILE_OPEN_READ 1, fd$ FILE_READLN 1, a$ WHILE a$ = "" OR LEFT$(a$, 1)= " ": FILE_READLN 1, a$: END_WHILE d$ = LEFT$(a$, 17): ' date de création de l'Editeur FILE_CLOSE 1 FILE_DELETE fd$ IF FILE_EXISTS(DatPano$) = 1 FILE_OPEN_READ 1, DatPano$: FILE_READLN 1, a$: FILE_CLOSE 1 IF a$ = d$ THEN FILE_LOAD 10, fl$: GOTO Fin: ' fichiers doc déjà à jour END_IF FILE_OPEN_WRITE 1, DatPano$: FILE_WRITELN 1, d$: FILE_CLOSE 1: ' archivage date GOSUB Detol: ' Extraction du manuel d'aide, de l'Editeur Panoramic
Fin: FILE_LOAD 10, fl$ END ' =========================== SOUS-PROGRAMMES ============================ Detol: EXECUTE_WAIT ResHacker$+Res_params$: ' résultat dans fz$ ' Nouvelle version ou réinit: constitution des fichiers des mots-clés EXECUTE_WAIT "Cmd.exe /c DEL " + rm$ + "*.txt" CLEAR 10 ITEM_ADD 10, "Reconstitution de la liste..." FILE_OPEN_READ 1, fz$ WHILE FILE_EOF(1) = 0 FILE_READLN 1, a$ IF a$ = "1" FILE_READLN 1, a$: ' Nouveau mot-clé IF LEFT$(a$, 1) = "#" a$ = "INCLUDE" ELSE IF LEFT$(a$, 5) = "(FOR " IF MID$(a$, 9, 1) = ")" a$ = "TO" ELSE a$ = "STEP" END_IF END_IF END_IF f$ = CHR$(34) + rm$ + a$ + ".txt" + CHR$(34) FILE_OPEN_WRITE 2, f$ a$ = STRING$(INT((ncl-LEN(a$))/2)," ") + a$ ' FILE_WRITELN 2, a$ FILE_WRITELN 2, "" FILE_READLN 1, a$ WHILE a$ <> "2": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$: GOSUB Ecritom: ' résumé a$ = "DÉFINITION": GOSUB Titro FILE_READLN 1, a$ WHILE a$ <> "3": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "FONCTION": GOSUB Titro WHILE a$<>"4": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "SYNTAXE": GOSUB Titro WHILE a$<>"5": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "USAGE": GOSUB Titro WHILE a$ <>"6": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "CAS D'ERREUR": GOSUB Titro WHILE a$ <>"7": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "EXEMPLE": GOSUB Titro WHILE a$ <>"8": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "EN RAPPORT": GOSUB Titro WHILE a$ <>"9": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE FILE_CLOSE 2 END_IF END_WHILE FILE_CLOSE 1: FILE_DELETE fz$ EXECUTE_WAIT "Cmd.exe /c DIR " + rm$ + "*.txt /O:N /B >" + fd$ FILE_OPEN_READ 1, fd$: FILE_OPEN_WRITE 2, fl$ WHILE FILE_EOF(1) = 0: FILE_READLN 1, a$ IF a$ = "INCLUDE.txt" THEN a$ = "#INCLUDE " + CHR$(34) + "F" + CHR$(34)+".txt" FILE_WRITELN 2, LEFT$(a$, LEN(a$)-4) END_WHILE FILE_CLOSE 1: FILE_DELETE fd$ FILE_CLOSE 2 RETURN
Ecritom: IF LEN(a$) > ncl FOR i% = ncl+1 TO 1 STEP -1 IF MID$(a$, i%, 1) = " " THEN EXIT_FOR NEXT i% FILE_WRITELN 2, LEFT$(a$, i%-1): a$ = MID$(a$, i%+1, LEN(a$)): GOTO Ecritom END_IF FILE_WRITELN 2, a$ RETURN
Titro: a$ = STRING$(INT((ncl-LEN(a$))/2)-1,"=") + " " + a$ + " " a$ = a$ + STRING$(ncl-LEN(a$), "=") FILE_WRITELN 2, "": FILE_WRITELN 2, a$ RETURN
Detail: s$ = ITEM_INDEX$(10) IF LEFT$(s$, 1) = "#" THEN s$ = "INCLUDE F" k% = INT(ncl*14/17) a$ = STRING$(INT((k%-LEN(s$))/2)," ") + s$ CLEAR 12: ITEM_ADD 12, a$ FILE_LOAD 11, CHR$(34) + rm$ + s$ + ".txt" + CHR$(34) RETURN
Reinit: a$ = "Reconstituer l'aide complète à partir de l'Éditeur Panoramic ?" IF MESSAGE_CONFIRMATION_YES_NO(a$) = 1 GOSUB Detol FILE_LOAD 10, fl$ END_IF RETURN
Objets: IF FILE_EXISTS(obj$) = 1 THEN EXECUTE_WAIT "C:\Langages\Panoramic\Objets.exe" RETURN
Nmc: ' EXECUTE_WAIT "Write.exe C:\Langages\Panoramic\Newmc.rtf" EXECUTE_WAIT fnm$ RETURN
Nomcourt: ' Récupération du chemin court d'un fichier (8.3) en fonction de son chemin long If File_Exists(nlong$) = 0 IF Dir_Exists(nlong$) = 0 Then Message "Path inexistant !": Return End_If File_Open_Write 1, fbat$ File_WriteLn 1, "@echo off" File_WriteLn 1, "for %%A in ("+chr$(34)+nlong$+chr$(34)+") do echo.%%~sfA >" + fm$ File_Close 1 EXECUTE_WAIT fbat$ File_Open_Read 1, fm$: File_ReadLn 1, ncourt$: File_Close 1 File_Delete fm$: File_Delete fbat$ RETURN
Le module OBJETS: - Code:
-
' Objets.bas exemples d'objets système Dim fm$, nf, a$, cr$, tb$, i% Label Aide, Msg fm$ = "C:\Temp\DIR.TXT" cr$ = chr$(13)+chr$(10) tb$ = chr$(9)
Height 0, 860: Font_Bold 0
Alpha 150: Top 150, 5: Left 150, 70 Caption 150, "********** AIDE-MÉMOIRE des principaux objets système **********" Alpha 151: Top 151, 20: Left 151, 140: Caption 151, "(Cliquer sur l'intitulé de l'objet en bleu)" Font_Color 150,255,0,0
' SPIN : objet n choix croissant ou décroissant ' valeurs limites: MINI n, v MAXI n,v ' Lecture valeur choisie par utilisateur: v = POSITION(n) SPIN 106 top 106, 200: left 106, 340: width 106, 40: height 106, 20 MIN 106, 6: MAX 106, 24: POSITION 106, 6 Alpha 107: top 107, 202: left 107, 250: Caption 107, "SPIN :" Alpha 131: Top 131, 202: Left 131, 300: Caption 131, "Taille:" Font_Color 107,0,0,255 On_Click 107, Aide
' CONTAINER_OPTION options exclusives ' intitulé CAPTION n, a$, PARENT d'un groupe d'OPTIONs CONTAINER_OPTION 101 top 101, 70: left 101, 55: width 101, 140: height 101, 65: caption 101, " Choix entre 3: " option 102: parent 102,101: top 102,15: left 102,20: caption 102, "option 1" option 103: parent 103,101: top 103,30: left 103,20: caption 103, "option 2" option 104: parent 104,101: top 104,45: left 104,20: caption 104, "option 3" Mark_ON 102 Alpha 108: top 108, 50: left 108, 55: Caption 108, "CONTAINER_OPTION:" Font_Color 108,0,0,255 On_Click 108, Aide
' MEMO zone modifiable par l'utilisateur, lecture: Item_Read(x) MEMO 110 top 110, 50: left 110, 330: width 110, 200: height 110, 60 Item_Add 110, "Ligne 1 du Memo" Item_Add 110, "Ligne 2" Item_Add 110, "Ligne 3" Alpha 120: Top 120, 50: Left 120, 250: Caption 120, "MEMO :" Font_Color 120,0,0,255 On_Click 120, Aide
' COMBO liste défilante (combiné de EDIT et LIST) ' ligne sélectionnée par utilisateur: ITEM_INDEX(n) et ITEM_INDEX$(n) COMBO 111 Top 111, 120: left 111, 330 Text 111, "Combo " Item_Add 111, "Arial" Item_Add 111, "Courier New" Item_Add 111, "Lucida Console" Alpha 121: Top 121, 120: Left 121, 250: Caption 121, "COMBO :" Font_Color 121,0,0,255 On_Click 121, Aide
' LIST choix d'un élément d'une liste ' ligne sélectionnée par utilisateur: ITEM_INDEX(n) et ITEM_INDEX$(n) LIST 112 Top 112, 150: Left 112, 55: Width 112, 160: Height 112, 80 Item_Add 112, "Objet LIST :" Item_Add 112, "Ligne 2 de la List" Item_Add 112, "Ligne 3 de la List" FONT_NAMES_Add 112: ' ajout de la liste des polices disponsibles Alpha 128: Top 128, 150: Left 128, 20: Caption 128, "LIST" Font_Color 128,0,0,255 On_Click 128, Aide
' DLIST objet non visible DLIST 113 ITEM_ADD 113,"Première ligne": ITEM_ADD 113,"Deuxième ligne": ITEM_ADD 113,"Troisième ligne" nf = COUNT(113): ' nombre d'éléments lus Alpha 122: Top 122, 150: Left 122, 250: Caption 122, "DLIST" Alpha 130: TOP 130, 150: LEFT 130, 300: Caption 130, "n éléments invisibles." Font_Color 122,0,0,255 a$ = ITEM_READ$ Alpha 123: Top 123, 170: Left 123, 250: Caption 123, "(ex. élément 3 de Dlist: " + ITEM_READ$(113, 3)+")" On_Click 122, Aide
' EDIT affichage d'une ligne d'édition (saisie d'un texte ou valeur) ' Texte saisi: TEXT$(n) EDIT 114 Top 114, 250: Left 114, 120: width 114, 350 Text 114, "pour saisir une chaîne" Alpha 127: Top 127, 252: Left 127, 55: Caption 127, "EDIT :" Font_Color 127,0,0,255 On_Click 127, Aide
' CHECK choix binaire (coche ou non) ' Statut: CHECKED(n) CHECK 115 Top 115, 280: Left 115, 120: width 115, 120: Caption 115, "Case à cocher" Alpha 129: Top 129, 280: Left 129, 55: Caption 129, "CHECK :" Font_Color 129,0,0,255 On_Click 129, Aide
' TRACK_BAR choix de valeur par incrément, MIN et MAX, résultat: POSITION(n) ' positionnement vertical ou horizontal: VERTICAL n, HORIZONTAL n TRACK_BAR 116 Top 116, 305: Left 116, 175: Width 116, 200: MIN 116, 128: MAX 116, 255 POSITION 116, 180 Alpha 124: Top 124, 310: Left 124, 55: Caption 124, "TRACK_BAR :" Font_Color 124,0,0,255 On_Click 124, Aide
' SCROLL_BAR choix dans une gamme de valeurs entre MIN et MAX, -> POSITION(n) ' vertical ou horizontal (mêmes commandes que Track_Bar) SCROLL_BAR 117 Top 117, 340: Left 117, 180: Width 117, 250 Alpha 125: Top 125, 340: Left 125, 55: Caption 125, "SCROLL_BAR :" Font_Color 125,0,0,255 On_Click 125, Aide
' PROGRESS_BAR visualisation d'une progression (mêmes commandes que Track_Bar) PROGRESS_BAR 118 Top 118, 370: Left 118, 180: Width 118, 300 MIN 118, 0: MAX 118, 100: POSITION 118, 25 Alpha 126: Top 126, 370: Left 126, 55: Caption 126, "PROGRESS_BAR :" Font_Color 126,0,0,255 On_Click 126, Aide
' ALPHA visualisation d'un texte statique ALPHA 152 Top 152, 400: Left 152, 55: Width 152, 200: Caption 152, "ALPHA :" Alpha 132: Top 132, 400: Left 132, 115: Caption 132, "zone d'affichage" Font_Color 152,0,0,255 On_Click 152, Aide
' BUTTON bouton à cliquer BUTTON 153 Top 153, 425: Left 153, 150: Width 153, 100: Height 153, 20: Caption 153, "Bouton" Alpha 154: Top 154, 425: Left 154, 55: Caption 154, "BUTTON :" Font_Color 154,0,0,255 On_Click 154, Aide
' FORM fenêtre conteneur d'objets FORM 155 Top 155, 485: Left 155, 55: Width 155, 200: Height 155,90: Caption 155, "FORM" On_Click 155, Aide
' PICTURE visualisation d'une image bitmap PICTURE 157 Top 157, 420: Left 157, 300: Width 157, 240: Height 157, 120 2D_TARGET_IS 157: 2D_FILL_COLOR 0,255,255: 2D_RECTANGLE 0, 0, 239, 119 2D_CIRCLE 120,60,40 Alpha 158: Top 158, 400: Left 158, 300: Caption 158, "PICTURE :" Alpha 133: Top 133, 400: Left 133, 370: Caption 133, "zone de dessin" Font_Color 158,0,0,255 On_Click 158, Aide
Alpha 162: TOP 162, 600: LEFT 162,55: CAPTION 162, "GRID " Font_Color 162,0,0,255: ON_CLICK 162, Aide GRID 163: TOP 163, 560: LEFT 163, 120: ON_CLICK 163, Aide
Alpha 170: TOP 170, 700: Left 170, 55: CAPTION 170, "Autres objets: " Alpha 171: TOP 171, 720: LEFT 171, 55: CAPTION 171, "SCENE2D": ON_CLICK 171, Aide Alpha 172: TOP 172, 720: LEFT 172, 180: CAPTION 172, "SCENE3D": ON_CLICK 172, Aide ALPHA 173: TOP 173, 720: LEFT 173, 305: CAPTION 173, "MAIN_MENU": ON_CLICK 173, Aide Alpha 174: TOP 174, 720: LEFT 174, 435: CAPTION 174, "SUB_MENU": ON_CLICK 174, Aide Alpha 175: TOP 175, 740: LEFT 175, 55: CAPTION 175, "SOUND" Alpha 176: TOP 176, 740: LEFT 176, 180: CAPTION 176, "MOVIE" ALPHA 177: TOP 177, 740: LEFT 177, 305: CAPTION 177, "IMAGE" ALPHA 178: TOP 178, 740: LEFT 178, 435: CAPTION 178, "TIMER" ALPHA 179: TOP 179, 760: LEFT 179, 55: CAPTION 179, "CONTAINER" ALPHA 180: TOP 180, 760: LEFT 180, 180: CAPTION 180, "OPEN_DIALOG" ALPHA 181: TOP 181, 760: LEFT 181, 305: CAPTION 181, "SAVE_DIALOG" FOR i% = 171 TO 181: Font_Color i%,0,0,255: ON_CLICK i%, Aide: NEXT i%
End
Aide: TO_FOREGROUND 155 If Clicked(108) = 1 a$ = "Objet 32 ********** CONTAINER_OPTION **********" + cr$ a$ = a$ + cr$ + "Choix d'une option parmi plusieurs (choix exclusif)" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 185 x 105" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Intitulé: CAPTION n, chaîne" a$ = a$ + cr$ + "Événements: ON_CLICK n, étiquette" + cr$ a$ = a$ + cr$ + cr$ + "Objet 11 ********** OPTION **********" + cr$ a$ = a$ + cr$ + "Sous-ensemble de CONTAINER_OPTION" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 113 x 117" + cr$ a$ = a$ + cr$ + " Commandes associées:" + cr$ a$ = a$ + cr$ + "PARENT n (n = le CONTAINER_OPTION)" a$ = a$ + cr$ + "Intitulé: CAPTION n, chaîne" a$ = a$ + cr$ + "Forçage d'une option: MARK_ON, MARK_OFF" Goto Msg End_If If Clicked(107) = 1 a$ = "Objet 21 ********** SPIN **********" + cr$ a$ = a$ + cr$ + "Choix d'une valeur numérique par incrémentation ou décrémentation" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 121 x 21" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Forçage de la valeur initiale: POSITION n,v" a$ = a$ + cr$ + "Forçage des valeurs maxi et mini: MAX n,x MIN n,y" a$ = a$ + cr$ + "Lecture de la position: POSITION(n), TOP(n), LEFT(n)" Goto Msg End_If If Clicked(120) = 1 a$ = "Objet 4 ********** MEMO **********" + cr$ a$ = a$ + cr$ + "Visualisation d'une zone multilignes, modifiable par l'utilisateur" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 185 x 89" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Barres de défilement: BAR_HORIZONTAL, BAR_VERTICAL, BAR_BOTH, BAR_NONE" a$ = a$ + cr$ + "Nettoyage du Memo: CLEAR n" a$ = a$ + cr$ + "Charger un fichier: FILE_LOAD n, fichier" a$ = a$ + cr$ + "Ajouter un fichier: FILE_ADD n, fichier" a$ = a$ + cr$ + "Sauvegarder la liste dans un fichier: FILE_SAVE n, fichier" a$ = a$ + cr$ + "Ajouter du texte: ITEM_ADD n, chaîne" a$ = a$ + cr$ + "Insérer du texte (après x): ITEM_INSERT n, x, chaîne" a$ = a$ + cr$ + "Supprimer une ligne: ITEM_DELETE n, x" a$ = a$ + cr$ + "Lire une ligne (x): ITEM_READ$(n, x)" a$ = a$ + cr$ + "Nombre d'éléments: COUNT(n)" Goto Msg End_If If Clicked(121) = 1 a$ = "Objet 5 ********** COMBO **********" + cr$ a$ = a$ + cr$ + "Choix d'une ligne modifiable par l'utilisateur dans une zone multilignes" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 145 x 21" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Charger un fichier: FILE_LOAD n, fichier" a$ = a$ + cr$ + "Ajouter un fichier: FILE_ADD n, fichier" a$ = a$ + cr$ + "Ajouter du texte: ITEM_ADD n, chaîne" a$ = a$ + cr$ + "Insérer du texte (après x): ITEM_INSERT n, x, chaîne" a$ = a$ + cr$ + "Supprimer une ligne: ITEM_DELETE n, x" a$ = a$ + cr$ + "Lire une ligne (x): ITEM_READ$(n, x)" a$ = a$ + cr$ + "Ligne sélectionnée: ITEM_INDEX(n), ITEM_INDEX$(n)" a$ = a$ + cr$ + "Visualiser un texte: TEXT n,a$" a$ = a$ + cr$ + "Nombre d'éléments: COUNT(n)" a$ = a$ + cr$ + "Effacement total: CLEARn" a$ = a$ + cr$ + "Charger la liste des polices système: FONT_NAMES_LOAD" a$ = a$ + cr$ + "Ajouter la liste des polices système: FONT_NAMES_ADD" a$ = a$ + cr$ + "Sauvegarder la liste dans un fichier: FILE_SAVE n, fichier" Goto Msg End_If If Clicked(122) = 1 a$ = "Objet 26 ********** DLIST **********" + cr$ a$ = a$ + cr$ + "Liste d'articles chaîne non visibles" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Charger un fichier: FILE_LOAD n, fichier" a$ = a$ + cr$ + "Ajouter un fichier: FILE_ADD n, fichier" a$ = a$ + cr$ + "Sauvegarder la liste dans un fichier: FILE_SAVE n, fichier" a$ = a$ + cr$ + "Ajouter du texte: ITEM_ADD n, chaîne" a$ = a$ + cr$ + "Insérer du texte (après x): ITEM_INSERT n, x, chaîne" a$ = a$ + cr$ + "Supprimer une ligne: ITEM_DELETE n, x" a$ = a$ + cr$ + "Lire une ligne (x): ITEM_READ$(n, x)" a$ = a$ + cr$ + "Nombre d'éléments: COUNT(n)" a$ = a$ + cr$ + "Effacement total: CLEAR n" a$ = a$ + cr$ + "Charger la liste des polices système: FONT_NAMES_LOAD" a$ = a$ + cr$ + "Ajouter la liste des polices système: FONT_NAMES_ADD" Goto Msg End_If If Clicked(124) = 1 a$ = "Objet 16 ********** TRACK_BAR **********" + cr$ + cr$ a$ = a$ + "Choix d'une valeur par déplacement d'un curseur" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 150 x 45" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Orientation: HORIZONTAL n, VERTICAL n " a$ = a$ + cr$ + "Valeurs limites: MIN n, v et MAX n, v" a$ = a$ + cr$ + "Fixation de la position initiale: POSITION n, v" a$ = a$ + cr$ + "Lecture de la position actuelle: POSITION(n)" Goto Msg End_If If Clicked(125) = 1 a$ = "Objet 19 ********** SCROLL_BAR **********" + cr$ a$ = a$ + cr$ + "Déplacement d'un curseur carré vers une valeur choisie" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 121 x 17" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Orientation: HORIZONTAL n, VERTICAL n " a$ = a$ + cr$ + "Valeurs limites: MIN n, v et MAX n, v" a$ = a$ + cr$ + "Fixation de la position initiale: POSITION n, v" a$ = a$ + cr$ + "Lecture de la position actuelle: POSITION(n)" Goto Msg End_If If Clicked(126) = 1 a$ = "Objet 20 ********** PROGRESS_BAR **********" + cr$ a$ = a$ + cr$+ "Visualisation d'un indicateur de progression" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 150 x 17" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Orientation: HORIZONTAL n, VERTICAL n " a$ = a$ + cr$ + "Valeurs limites: MIN n, v et MAX n, v" a$ = a$ + cr$ + "Fixation de la position initiale: POSITION n, v" a$ = a$ + cr$ + "Lecture de la position actuelle: POSITION(n)" Goto Msg End_If If Clicked(127) = 1 a$ = "Objet 3 ********** EDIT **********" + cr$ a$ = a$ + cr$ + "Saisie et/ou modification d'une ligne de texte" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 121 x 21" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Visualiser un texte: TEXT n, chaîne" a$ = a$ + cr$ + "Lire le texte entré par l'utilisateur: TEXT$(n)" a$ = a$ + cr$ + "Événements: ON_CLICK, ON_CHANGE, ON_KEY_UP, ON_KEY_DOWN" Goto Msg End_If If Clicked(128) = 1 a$ = "Objet 8 ********** LIST **********" + cr$ a$ = a$ + cr$ + "Choix d'une ligne dans une zone multilignes (non modifiable)" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 121 x 97" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Charger un fichier: FILE_LOAD n, fichier" a$ = a$ + cr$ + "Ajouter d'un fichier: FILE_ADD n, fichier" a$ = a$ + cr$ + "Ajouter du texte: ITEM_ADD n, chaîne" a$ = a$ + cr$ + "Insérer du texte (après x): ITEM_INSERT n, x, chaîne" a$ = a$ + cr$ + "Supprimer une ligne: ITEM_DELETE n, x" a$ = a$ + cr$ + "Lire une ligne (x): ITEM_READ$(n, x)" a$ = a$ + cr$ + "Ligne sélectionnée: x = ITEM_INDEX(n) ou a$ = ITEM_INDEX$(n)" a$ = a$ + cr$ + "Nombre d'éléments: COUNT(n)" a$ = a$ + cr$ + "Effacement total: CLEAR n" a$ = a$ + cr$ + "Charger la liste des polices système: FONT_NAMES_LOAD" a$ = a$ + cr$ + "Ajouter la liste des polices système: FONT_NAMES_ADD" a$ = a$ + cr$ + "Sauvegarder la liste dans un fichier: FILE_SAVE n, fichier" Goto Msg End_If If Clicked(129) = 1 a$ = "Objet 10 ********** CHECK **********" + cr$ a$ = a$ + cr$ + "Case à cocher" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 97 x 17" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Forçage de l'option: MARK_ON ou MARK_OFF" a$ = a$ + cr$ + "Intitulé: CAPTION" a$ = a$ + cr$ + "Lecture: IF CHECKED(n) = 1" Goto Msg End_If If Clicked(152) = 1 a$ = "Objet 6 ********** ALPHA **********" + cr$ a$ = a$ + cr$ + "Visualisation d'un texte statique, non modifiable" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 65 x 17" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Texte à afficher: CAPTION n,chaîne" Goto Msg End_If If Clicked(154) = 1 a$ = "Objet 2 ********** BUTTON **********" + cr$ a$ = a$ + cr$ + "Affichage d'un bouton cliquable" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 75 x 25" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Intitulé: CAPTION n,chaîne" a$ = a$ + cr$ + "Lecture: par ON_CLICK n,adresse" a$ = a$ + "Événements: IF CLICKED(n) = 1, ON_KEY_UP, ON_KEY_DOWN" Goto Msg End_If If Clicked(155) = 1 a$ = "Objet 7 ********** FORM **********" + cr$ a$ = a$ + cr$ + "Création d'un conteneur d'objets" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 320 x 240" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Intitulé: CAPTION n,string" a$ = a$ + cr$ + "Modifier la bordure: BORDER_HIDE, BORDER_SMALL, BORDER_NORMAL" a$ = a$ + cr$ + "Événements: ON_CLICK, ON_KEY_UP, ON_KEY_DOWN, ON_CLOSE" Goto Msg End_If If Clicked(158) = 1 a$ = "Objet 9 ********** PICTURE **********" + cr$ a$ = a$ + cr$ + "Création d'une zone d'affichage d'une image BMP ou JPG" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 105 x 105" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Positionnement et dimensions: TOP, LEFT, HEIGHT, WIDTH" a$ = a$ + cr$ + "Chargement d'une image dans le picture: FILE_LOAD n, Image" a$ = a$ + cr$ + "Ajuster l'image à la fenêtre: STRETCH_ON n" a$ = a$ + cr$ + " (inverse: STRETCH_OFF n)" a$ = a$ + cr$ + "Position de la souris sur le picture: MOUSE_X_POSITION, MOUSE_Y_POSITION" a$ = a$ + cr$ + "Effacement total (doit être la cible du 2D_TARGET): CLS" Goto Msg End_If IF Clicked(162) = 1 OR Clicked(163) = 1 a$ = "Objet 22 ********** GRID **********" + cr$ a$ = a$ + cr$ + "Création d'un objet grille (tableau)" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 320 x 120 (1+4 lignes, 1+4 colonnes)" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Caractéristiques:" a$ = a$ + cr$ + " HINT, HINT_HIDE, FULL_SPACE" a$ = a$ + cr$ + " GRID_COLUMN, GRID_COLUMN_FIXED, GRID_COLUMN_WIDTH" a$ = a$ + cr$ + " GRID_RAW, GRID_RAW_FIXED, GRID_RAW_HEIGHT" a$ = a$ + cr$ + " GRID_FIXED_COLOR, GREAD_WRITE, GRID_READ$" a$ = a$ + cr$ + "Gestion de l'événement: ON_CLICK n, étiquette" Goto Msg End_If IF Clicked(171) = 1 a$ = "Objet 27 ********** SCENE2D **********" + cr$ a$ = a$ + cr$ + "Visualisation d'un univers 2D" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 200 x 200" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "TOP, LEFT, WIDTH, HEIGHT, COLOR, FULL_SPACE, STRETCH_ON, STRETCH_OFF" Goto Msg End_If IF Clicked(172) = 1 a$ = "Objet 1 ********** SCENE3D **********" + cr$ a$ = a$ + cr$ + "Visualisation d'un monde 3D" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 200 x 200" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "TOP, LEFT, WIDTH, HEIGHT, COLOR, HINT, HINT_HIDE, FULL_SPACE, ON_CLICK" Goto Msg End_If IF Clicked(173) = 1 a$ = "Objet 12 ********** MAIN_MENU **********" + cr$ a$ = a$ + cr$ + "Création d'un système de menus" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "ON_CLICK" Goto Msg End_If IF Clicked(174) = 1 a$ = "Objet 13 ********** SUB_MENU **********" + cr$ a$ = a$ + cr$ + "Création des sous-menus d'un MAIN_MENU" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "PARENT, CAPTION, HIDE, SHOW, ACTIVE, INACTIVE, ON_CLICK" Goto Msg End_If IF Clicked(175) = 1 a$ = "Objet 14 ********** SOUND **********" + cr$ a$ = a$ + cr$ + "Création d'un objet SOUND" + cr$ a$ = a$ + "pour jouer un fichier son chargé par FILE_LOAD" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "FILE_LOAD, PLAY" Goto Msg End_If IF Clicked(176) = 1 a$ = "Objet 15 ********** MOVIE **********" + cr$ a$ = a$ + cr$ + "Création d'un objet MOVIE" + cr$ a$ = a$ + "pour jouer une vidéo multimédia chargée par FILE_LOAD" + cr$ a$ = a$ + cr$ + "Dimensions implicites (pixels): 100 x 80" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "TOP, LEFT, WIDTH, HEIGHT, HINT, HINT_HIDE, FULL_SPACE, COLOR," a$ = a$ + cr$ + "ON_CLICK, FILE_LOAD" Goto Msg End_If IF Clicked(177) = 1 a$ = "Objet 41 ********** IMAGE **********" + cr$ a$ = a$ + cr$ + "Création d'un objet IMAGE en mémoire" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "FILE_LOAD, FILE_SAVE, 2D_IMAGE_COPY, 2D_IMAGE_PASTE," a$ = a$ + cr$ + "SPRITE_IMAGE_LOAD, 2D_IMAGE_TEXTURE" Goto Msg End_If IF Clicked(178) = 1 a$ = "Objet 28 ********** TIMER **********" + cr$ a$ = a$ + cr$ + "Déclenchement d'une interruption périodique" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "Période (implicite 1000ms): TIMER_INTERVAL" a$ = a$ + cr$ + "Désactivation/Réactivation: TIMER_OFF, TIMER_ON" a$ = a$ + cr$ + "Gestion de l'événement: ON_TIMER n, étiquette" Goto Msg End_If IF Clicked(179) = 1 a$ = "Objet 23 ********** CONTAINER **********" + cr$ a$ = a$ + cr$ + "Création d'un conteneur d'objets système" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "TOP, LEFT, WIDTH, HEIGHT, HINT, HINT_HIDE, FULL_SPACE," a$ = a$ + cr$ + "PARENT, ON_CLICK" Goto Msg End_If IF Clicked(180) = 1 a$ = "Objet 17 ********** OPEN_DIALOG **********" + cr$ a$ = a$ + cr$ + "Création d'un OPEN_DIALOG pour choix de fichier ultérieur" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "FILTER, FILE_NAME$, DIR_DIALOG" Goto Msg End_If IF Clicked(181) = 1 a$ = "Objet 18 ********** SAVE_DIALOG **********" + cr$ a$ = a$ + cr$ + "Création d'un SAVE_DIALOG pour sauvegarde ultérieure de fichier" + cr$ a$ = a$ + cr$ + "- Commandes associées:" + cr$ a$ = a$ + cr$ + "FILTER, FILE_NAME$, DIR_DIALOG" Goto Msg End_If Msg: MESSAGE a$ RETURN
en prime, l'icône à mettre sur le bureau: (au format gif, à convertir en ico)
Dernière édition par JL35 le Mer 9 Nov 2011 - 15:27, édité 5 fois | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 16:58 | |
| | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 17:41 | |
| De rien, si ça peut servir... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 17:42 | |
| Très beau programme. Je prends ! Deux petites remarques, cependant: 1. chez moi, j'ai du mettre la ligne 17 en commentaire (sinon, on a un "//" dans un nom de fichier...) 2. je l'ai modifié pour pouvoir chercher l'éditeur dans le répertoire par défaut de Panoramic. Pour avoir le nom court du répertoire avec le numéro de version: ouvrir une fenêtre DOS dans "Program Files", puis frapper "dir /X pano*.*, et voilà Voici ma modif (j'ai changé le chemin d'accès à ResHack.exe pour pointer sur sur répertoire d'installation par défaut) - Code:
-
DIM a$, d$, ra$, rm$, f$, fz$, fl$, fd$, s$, v$, DatPano$, Edipan$, ResHacker$, Res_params$ DIM i%, w0, h0, wl, hl, wf, ncl, nl, k%, fnm$, obj$, ver$
LABEL Fin, Detol, Ecritom, Titro, Detail, Reinit, Objets, Nmc
' -------------------------------- CHEMINS A AJUSTER ! ------------------------ ra$ = "C:\Langages\Panoramic\": ' répertoire des sources Edipan$ = "C:\Progra~1\Panora~1\PANORA~1.exe": ' répertoire de l'éditeur ver$ = ".22" IF FILE_EXISTS(Edipan$)=0 Edipan$ = "C:\Progra~1\Panora~1"+ver$+"\PANORA~1.exe" END_IF ResHacker$ = "C:\Progra~1\Resour~1\ResHacker.exe": ' chemin de Reshacker obj$ = ra$ + "objets.exe": ' aide-mémoire des objets Panoramic rm$ = ra$ + "Manuel\": ' répertoire des fichiers d'aide IF DIR_EXISTS(rm$) = 0 THEN DIR_MAKE rm$ ' rm$ = rm$ + "\" fz$ = rm$ + "ppp.res" fl$ = rm$ + "Listmc.lst": ' liste brute ' fnm$ = ra$ + "Newmc.rtf" fnm$ = "http://panoramic-language.pagesperso-orange.fr/French/HISTORY.htm"
fd$ = "C:\Temp\Dir.tmp" DatPano$ = rm$ + "Datedi.dat": ' date de la version Editeur courante
Res_params$ = " -extract "+Edipan$+", "+fz$+", RCData, KEYWORDS, 1036" ' ------------------------------------------------------------------------------ w0 = 800: h0 = SCREEN_Y-100 WIDTH 0, w0: HEIGHT 0, h0: CAPTION 0, " - ÉDITEUR PANORAMIC: MANUEL DE RÉFÉRENCE -" wl = 200: hl = h0-60 LIST 10: TOP 10, 0: LEFT 10, 5: WIDTH 10, wl: HEIGHT 10, hl ON_CLICK 10, Detail wf = w0-wl-30 LIST 11: TOP 11, 20: LEFT 11, wl+10: WIDTH 11, wf: HEIGHT 11, hl-25 FONT_NAME 11, "Bitstream Vera Sans Mono": FONT_SIZE 11, 10: ' FONT_BOLD 11 ncl = INT(wf/8)-1 COLOR 11, 255,255,220 LIST 12: TOP 12, 0: LEFT 12, wl+10: WIDTH 12, wf: HEIGHT 12, 25 FONT_NAME 12, "Bitstream Vera Sans Mono": FONT_SIZE 12, 12: FONT_BOLD 12 COLOR 12, 255,255,220 MAIN_MENU 15 SUB_MENU 16: PARENT 16, 15: CAPTION 16, "Réinit": ON_CLICK 16, Reinit SUB_MENU 17: PARENT 17, 15: CAPTION 17, "Objets": ON_CLICK 17, Objets SUB_MENU 18: PARENT 18, 15: CAPTION 18, "Historique": ON_CLICK 18, Nmc
EXECUTE_WAIT "Cmd.exe /c DIR " + Edipan$ + " >" + fd$ FILE_OPEN_READ 1, fd$ FILE_READLN 1, a$ WHILE a$ = "" OR LEFT$(a$, 1)= " ": FILE_READLN 1, a$: END_WHILE d$ = LEFT$(a$, 17): ' date de création de l'Editeur FILE_CLOSE 1 FILE_DELETE fd$ IF FILE_EXISTS(DatPano$) = 1 FILE_OPEN_READ 1, DatPano$: FILE_READLN 1, a$: FILE_CLOSE 1 IF a$ = d$ THEN FILE_LOAD 10, fl$: GOTO Fin: ' fichiers doc déjà à jour END_IF FILE_OPEN_WRITE 1, DatPano$: FILE_WRITELN 1, d$: FILE_CLOSE 1: ' archivage date GOSUB Detol: ' Extraction du manuel d'aide, de l'Editeur Panoramic
Fin: FILE_LOAD 10, fl$ END
Detol: file_open_write 2,x.bat file_writeln 2,reshacker$+res_params$ file_close 2 EXECUTE_WAIT ResHacker$+Res_params$: ' résultat dans fz$ ' Nouvelle version: constitution des fichiers des mots-clés EXECUTE_WAIT "Cmd.exe /c DEL " + rm$ + "*.txt" CLEAR 10 ITEM_ADD 10, "Reconstitution de la liste..." FILE_OPEN_READ 1, fz$ WHILE FILE_EOF(1) = 0 FILE_READLN 1, a$ IF a$ = "1" FILE_READLN 1, a$: ' Nouveau mot-clé IF LEFT$(a$, 1) = "#" f$ = rm$ + "INCLUDE.txt" ELSE f$ = CHR$(34) + rm$ + a$ + ".txt" + CHR$(34) END_IF FILE_OPEN_WRITE 2, f$ a$ = STRING$(INT((ncl-LEN(a$))/2)," ") + a$ ' FILE_WRITELN 2, a$ FILE_WRITELN 2, "" FILE_READLN 1, a$ WHILE a$ <> "2": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$: GOSUB Ecritom: ' résumé a$ = "DÉFINITION": GOSUB Titro FILE_READLN 1, a$ WHILE a$ <> "3": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "FONCTION": GOSUB Titro WHILE a$<>"4": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "SYNTAXE": GOSUB Titro WHILE a$<>"5": FILE_READLN 1, a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "USAGE": GOSUB Titro WHILE a$ <>"6": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "CAS D'ERREUR": GOSUB Titro WHILE a$ <>"7": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "EXEMPLE": GOSUB Titro WHILE a$ <>"8": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE a$ = "EN RAPPORT": GOSUB Titro WHILE a$ <>"9": FILE_READLN 1,a$: END_WHILE FILE_READLN 1, a$ WHILE LEN(a$) > 1: GOSUB Ecritom: FILE_READLN 1, a$: END_WHILE FILE_CLOSE 2 END_IF END_WHILE FILE_CLOSE 1: FILE_DELETE fz$ EXECUTE_WAIT "Cmd.exe /c DIR " + rm$ + "*.txt /O:N /B >" + fd$ FILE_OPEN_READ 1, fd$: FILE_OPEN_WRITE 2, fl$ WHILE FILE_EOF(1) = 0: FILE_READLN 1, a$ IF a$ = "INCLUDE.txt" THEN a$ = "#INCLUDE " + CHR$(34) + "F" + CHR$(34)+".txt" FILE_WRITELN 2, LEFT$(a$, LEN(a$)-4) END_WHILE FILE_CLOSE 1: FILE_DELETE fd$ FILE_CLOSE 2 RETURN
Ecritom: IF LEN(a$) > ncl FOR i% = ncl+1 TO 1 STEP -1 IF MID$(a$, i%, 1) = " " THEN EXIT_FOR NEXT i% FILE_WRITELN 2, LEFT$(a$, i%-1): a$ = MID$(a$, i%+1, LEN(a$)): GOTO Ecritom END_IF FILE_WRITELN 2, a$ RETURN
Titro: a$ = STRING$(INT((ncl-LEN(a$))/2)-1,"=") + " " + a$ + " " a$ = a$ + STRING$(ncl-LEN(a$), "=") FILE_WRITELN 2, "": FILE_WRITELN 2, a$ RETURN
Detail: s$ = ITEM_INDEX$(10) IF LEFT$(s$, 1) = "#" THEN s$ = "INCLUDE F" k% = INT(ncl*14/17) a$ = STRING$(INT((k%-LEN(s$))/2)," ") + s$ CLEAR 12: ITEM_ADD 12, a$ FILE_LOAD 11, CHR$(34) + rm$ + s$ + ".txt" + CHR$(34) RETURN
Reinit: ' forçage de la mise à jour GOSUB Detol FILE_LOAD 10, fl$ RETURN
Objets: IF FILE_EXISTS(obj$) = 1 THEN EXECUTE_WAIT "C:\Langages\Panoramic\Objets.exe" RETURN
Nmc: ' EXECUTE_WAIT "Write.exe C:\Langages\Panoramic\Newmc.rtf" EXECUTE_WAIT fnm$ RETURN
| |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 17:49 | |
| Merci Klaus, pour tes remarques toujours aussi judicieuses !
Il est évident aussi que chacun peut modifier à sa façon le module 'Objets', dans sa présentation qui a été faite de manière un peu touffue, et dans sa mise à jour pour les futurs nouveaux objets.
J'ai un trou de mémoire: est-il possible de forcer un objet à rester au premier plan ? Dans le module objets, si je clique à un endroit quelconque, le Form 1 (exemple de Form) se cache sous le Form 0 ...
PS @Klaus: pour le chemin de l'Editeur, depuis Windows7 les programmes s'installent sous Program Files (x86), et non plus sous Program Files, qui existe toujours cependant, d'où mon test: Program Files -> Progra~1 Program Files (x86) -> Progra~2 ça m'a fait tout changer dans mes programmes ! et là ta modif est inopérante. De plus, ta modif oblige quand même à modifier le programme pour y mettre le dernier numéro de version, pas très pratique.
Dernière édition par JL35 le Mar 8 Nov 2011 - 17:55, édité 1 fois | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 17:54 | |
| Oui, tu fais ceci: - Code:
-
label montre_moi on_click 0,montre_moi ... montre_moi: to_forground 1 return
| |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 17:55 | |
| Il me semblait bien qu'il y avait quelque chose pour ça, mais j'avais oublié, merci Klaus !
j'ai édité, on s'est croisés...
Rectifié le module Objets: au tout début du s/p Aide, il suffit de mettre TO_FOREGROUND 155 à la place du SHOW 155, et ça marche. | |
| | | Invité Invité
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 18:51 | |
| Merci JL35, j'adopte ton programme. J'ai quelque peu modifier les executes, vu que j'ai un viel ordi, et peu de mémoire. Les exécutables je ne les fais plus. J'ai fait une compilation de ceci: - Code:
-
dim a$:a$= clipboard_string_paste$:chain a$ et dans ton programme: - Code:
-
clipboard_string_copy obj$ execute_wait "C:\CHAIN_prg.exe" J'aurai peut-être pas du dire cela |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 19:15 | |
| OK, j'ai pris la version modifiée de OBJETS. Juste pour info: j'utilise un petit outil gratuit DosName pour avoir les noms en format 8.3 Voici le lien: http://www.fileheap.com/software-dosname-download-48290.htmlTrès simple d'utilisation, et il donne le vrai nom en format 8.3, pas unn string calculé qui est forcément approximatif (il y a une littérature abondante sur le net sur le problème des noms courts). Ce n'est pas aussi simple que de prendre 6 caractères, une tilde, puis un chiffre. Il y a même des cas où il n'y a pas de tilde (!) ou des cas où le nom est composé entre autres de chiffres "hash" du nom du fichier, selon un algorithme NON documenté par Microsoft ! | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 21:01 | |
| @cosmos mais si, tu as raison, il est bien, entendu que chacun adapte à sa façon et à son goût, et c'est bien de le dire, ça peut donner des idées à d'autres, c'est ça qui fait avancer le schmilblick.
@Klaus pour les noms courts, tu as raison il y a plein de ressources externes plus ou moins pratiques. Hors ligne il y a déjà tout simplement la commande Dos DIR avec option /X. Mais j'ai toujours désiré quelque chose qui soit intégré dans le module panoramic, j'essaie d'éviter les ressources externes si possible. Tu as vu le petit s/p que j'ai mis dans le post de Nardo ('Liste des mots-clés') ? C'est tout simple, un tout petit fichier .bat intégré... jusqu'ici je ne l'ai pas mis en défaut, mais je ne jure pas que ce n'est pas possible. Sinon il y a également un VBScript qu'on peut aussi intégrer. Certains répertoires particuliers de Windows (genre 'Documents and Settings') peuvent parfois causer des problèmes, mais il faut dire qu'on ne les adresse pas beaucoup en programmation, en général.
@Klaus toujours, pardon je n'avais pas bien lu ta 1ère intervention (ligne 17 mise en commentaire à cause du //). C'est un oubli de ma part, il fallait supprimer le "\" dans la ligne 14: "Manuel" au lieu de "Manuel\", le test de la ligne 15 (test d'existence, sinon création) ayant été rajouté après coup. C'est corrigé plus haut. | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: Aide Panoramic sur le bureau Mar 8 Nov 2011 - 23:51 | |
| OK, après avoir modifé les chemins, ça marche nickel pour moi aussi | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 0:08 | |
| Petite modif dans le module AIDE: prise en compte des mots-clés TO et STEP (qui étaient mal représentés en tête de liste, pas à leur place alphabétique)
| |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 0:14 | |
| Nickel ca fonctionne !!! Merci JL35 ! Ca m'évite de faire ce prog.... | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 0:25 | |
| Justement, c'était pour te rendre service ! Et tu récupères la liste des mots-clés par la même occasion. | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 0:30 | |
| Jette un coup d'oeil sur mon "beautifier" : J'ai mis en application l'astuce des chemins courts... | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 0:33 | |
| Pour demain... bonne nuit à toi ! | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 0:39 | |
| | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 2:47 | |
| @JL35 et tous ceux qui ont des problèmes avec les noms courts: j'ai mis en ligne sur mon site la solution ultime: un utilitaire qui le fait et un petit programme Panoramic qui s'en sert et qui montre comment on le fait DANS un programme Panoramic... Et en regardant bien les noms générés, on voit qu'il y a des surprises ! Je n'en dis pas plus... | |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 7:24 | |
| Bonjour Klaus ! Merci ! Je viens d'aller sur ton site : je n'ai pas accès à la version française.... Je n'ai pas encore testé, mais dans tes commentaires concernant ton utilitaire, tu précises à un moment que tu fais une sauvegarde temporaire à la racine de C: Perso cela ne me pose pas de problème mais je crois que sur certains PC (JL35 : cf. liste mots-clés), il y a des restrictions d'accès sous Win7 (session simple utilisateur ?). Après des essais, JL35 avait modifié le prog pour faire en sorte que la sauvegarde se fasse en C:\Temp A+ | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 10:04 | |
| Bonne idée. Je vais modifier dans ce sens. | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Mer 9 Nov 2011 - 15:33 | |
| Mes restrictions concernant le répertoire racine, ce n'est pas très clair (je suis bien administrateur), il faut que je regarde ça de plus près.
J'ai mis une nouvelle version de AIDE, avec un contrôle sur les noms de chemin fournis (Editeur, sources etc.), et renvoi sur un sous-programme interne de calcul du nom court (toujours ma méthode du fichier .bat qui a l'air de fonctionner, tout ça en Panoramic sans appel à une ressource externe).
| |
| | | Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Re: Aide Panoramic sur le bureau Jeu 10 Nov 2011 - 0:19 | |
| Oui, le coup du batch fonctionne nickel ! Le seul reproche de cette méthode c'est l'apparition fugitive de la fenêtre DOS... mais en faisant en sorte de sauvegarder le résultat dans un fichier de config (cf mon prog de mise en forme), ce batch n'est appelé qu'une seule fois... | |
| | | JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Aide Panoramic sur le bureau Jeu 10 Nov 2011 - 10:23 | |
| Bonne idée Nardo, c'est bien vrai que c'est inutile de tout recalculer à chaque lancement !
L'apparition fugitive de la fenêtre Dos, c'est un problème récurrent, pas grave mais peu esthétique. J'ai eu beau chercher partout, pas moyen de s'en débarrasser. | |
| | | Contenu sponsorisé
| Sujet: Re: Aide Panoramic sur le bureau | |
| |
| | | | Aide Panoramic sur le bureau | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |