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
» Dessin 2D: largeur de trait
par JL35 Aujourd'hui à 18:10

» Projet de planétarium virtuel.
par Pedro Alvarez Aujourd'hui à 16:28

» PanExpress : l'éditeur Panoramic avec création d'objet
par Jean Claude Hier à 20:32

» Animation: Feux de signalisation
par Minibug Hier à 20:28

» Quantité de mémoire utilisée par un exe
par Jack Mar 19 Juin 2018 - 16:39

» Problème avec 'file_load'.
par Pedro Alvarez Lun 18 Juin 2018 - 8:12

» Version instantanée V 0.9.28i20 du 13/06/2018
par jjn4 Sam 16 Juin 2018 - 14:25

» string$(0,chr$(32)) sans erreur
par silverman Ven 15 Juin 2018 - 19:56

» Version instantanée V 0.9.28i19 du 13/06/2018
par Minibug Ven 15 Juin 2018 - 19:14

» Mes souhaits d'amélioration de Panoramic.
par Pedro Alvarez Jeu 14 Juin 2018 - 20:17

» [RÉSOLU] Message d'erreur impossible à indentifier
par Minibug Mer 13 Juin 2018 - 20:52

» Cadre pour image
par Jean Claude Mar 12 Juin 2018 - 16:31

» Créateur d'objets Panoramic
par Minibug Mar 12 Juin 2018 - 14:02

» Planétarium gratuit.
par Jean Claude Sam 9 Juin 2018 - 18:50

» Comment afficher une image sans fond.
par JL35 Sam 9 Juin 2018 - 14:16

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2018
LunMarMerJeuVenSamDim
    123
45678910
11121314151617
18192021222324
252627282930 
CalendrierCalendrier

Partagez | 
 

 Contrôle des touches de fonction

Aller en bas 
AuteurMessage
Jean Claude

avatar

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

MessageSujet: Contrôle des touches de fonction   Jeu 30 Nov 2017 - 11:50

Bonjour à tous,

Comme l'indique le titre voici un petit utilitaire pour contrôler les touches de fonction F1 à F8.

Au préalable, et pour vous éviter des désagréments, ne lancez pas le code tel quel car il va planter. Razz
Transformez-le en exécutable car c'est ainsi qu'il fonctionne le mieux. Ce programme est prévu pour fonctionner indépendamment des autres programmes ouverts.
Si vous le testez et que vous ne souhaitez pas le conserver: vous devez supprimer le dossier ControleTouchesFonctionTF qui se trouve à la racine C:.

L'OBJECTIF: affecter du texte aux touches de fonction de F1 à F8 pour le coller ailleurs.
Soit une sorte de presse-papier à 8 étages, dont le texte de chaque touche est pré-programmé par vos soins.

UTILISATION:
une fois l'exécutable lancé:
Démarrage du système en mode "Lecture" par la touche [Pause/Attn].
Démarrage du système en mode "Programmation Texte des touches" par la touche [Arrêt Défil] à condition d'être en mode "Lecture".
Neutralisation du système par Appuis successifs sur la touche [Pause/Attn] jusqu'à ce que le message "Mode Lecture et Programmation des touches, désactivés" apparaisse dans la fenêtre.
Sortie du système normalement par la croix rouge ou par la touche [Echap] plus commode si la fenêtre est cachée sous une autre.

Exemple d'application: coller rapidement des lignes de code Panoramic préalablement programées.
La touche F1 contient:
 if <condition> :  : else :  : end_if
il vous suffira de taper F1, puis CTRL+V pour coller ce texte.

Autre exemple:
' Touche F2
 if file_exists()=0 then
Et ainsi de suite.....

A vous d'imaginer d'autres possibilités d’application.

Vous trouverez en commentaire dans le code.bas d'autres informations.

Code:
' Contrôle des touches de fonction par JC 29/11/2017

' OBJECTIF: affecter du texte aux touches de fonction de F1 à F8 pour le coller ailleurs.
' Soit un presse-papier à 8 étages, dont le texte de chaque touche est pré-programmé.

' ATTENTION: Ce programme doit être transformé en exécutable (il est prévu pour fonctionner à coté de Panoramic_Editor).
'    Vos touches de fonction seront sous controle tant qu'il sera en service.
'    En mode "Lecture" il peut être réduit dans la barre des tâches si vous avez mémorisé les textes des touches de fonction.

' Exemple d'application: mémoriser des lignes de code Panoramic pour les coller rapidement dans votre code.
' La touche F1 contient:
  if <condition> :  : else :  : end_if
' il vous suffira de taper F1, puis CTRL+V pour coller ce texte.

' Autres exemples pour F2,F3,F4, ...
' F2
  for = to  :  : next
' F3
  While  :  : End_While
' F4
  if file_exists()=0 then
' Ainsi de suite.....

' AIDE: Utilisation:
' Démarrage du système en mode "Lecture" par la touche [Pause/Attn]
' Démarrage du système en mode "Programmation Texte" par la touche [Arrêt Défil] à condition d'être en mode "Lecture"
' Sortie du système normalement par la croix rouge ou par la touche [Echap] si la fenêtre est cachée sous une autre.

' INFOS:
' Au départ du système il y a création du dossier "C:\ControleTouchesFonctionTF" où sera placé le fichier "MemoTxtTouchesFonction.txt"
' Chaque fois qu'une touche de fonction vient d'être programmée le système se remet automatiquement en mode "Lecture"
' Condition impérative: Le texte à programmer dans une touche doit comporter une seule ligne.

' CAS PARTICULIER: Si le code en cours de programmation utilise les touches de fonction,
' pour l'exécuter, mettre le système hors service.
' 2 possibilités:
'   1) fermer le programme "Contrôle des touches de fonction"
'   2) Presser la touche [Pause/Attn] jusqu'à désactivation des 2 modes.

' Adaptation du programme à votre goût:
' Vous pouvez interdire la programmation d'une touche de fonction en shuntant les 2 lignes qui lui correspondent au label VerifTimerTF
' Le texte des touches est mémorisé dans le fichier "MemoTxtTouchesFonction.txt"
' Ce fichier se trouve dans le dossier "C:\ControleTouchesFonctionTF"
  ' - pour changer l'emplacement modifier RepTF$ à la SUB InstalleControleTouchesFonction().
  
InstalleControleTouchesFonction()
END
rem ============================================================================ ' Le système ControleTouchesFonction
VerifTimerTF:
   to_foreground 0
   if scancode=19 then ActiveTouchesTF()
   if scancode=145 and ModeTF%=1 then ActiveModeProgTF()
   if scancode=112 and ModeTF%=1 then Lecture("F1")
   if scancode=112 and ModeTF%=2 then Programme("F1")
   if scancode=113 and ModeTF%=1 then Lecture("F2")
   if scancode=113 and ModeTF%=2 then Programme("F2")
   if scancode=114 and ModeTF%=1 then Lecture("F3")
   if scancode=114 and ModeTF%=2 then Programme("F3")
   if scancode=115 and ModeTF%=1 then Lecture("F4")
   if scancode=115 and ModeTF%=2 then Programme("F4")
   if scancode=116 and ModeTF%=1 then Lecture("F5")
   if scancode=116 and ModeTF%=2 then Programme("F5")
   if scancode=117 and ModeTF%=1 then Lecture("F6")
   if scancode=117 and ModeTF%=2 then Programme("F6")
   if scancode=118 and ModeTF%=1 then Lecture("F7")
   if scancode=118 and ModeTF%=2 then Programme("F7")
   if scancode=119 and ModeTF%=1 then Lecture("F8")
   if scancode=119 and ModeTF%=2 then Programme("F8")
   if scancode=27 then terminate
RETURN

SUB Lecture(STF$)
    dim_local NumLig%,item$
    timer_off TimerTF% : RepATF$=dir_current$ : dir_change RepTF$
    if file_exists("MemoTxtTouchesFonction.txt")=0 then message "Mode ''Lecture'' des touches de fonction:"+chr$(13)+"Aucune touche de fonction programée." : dir_change RepATF$ : timer_on TimerTF% : exit_sub
    clear DlistTF% : file_load DlistTF%,"MemoTxtTouchesFonction.txt"
    NumLig%=val(right$(STF$,len(STF$)-1)) : item$=item_read$(DlistTF%,NumLig%) : clipboard_string_copy item$
    to_foreground 0 : cls : print item$
    dir_change RepATF$ : timer_on TimerTF%
END_SUB

SUB Programme(STF$)
    dim_local NumLig%,item$
    timer_off TimerTF% : RepATF$=dir_current$ : dir_change RepTF$
    if file_exists("MemoTxtTouchesFonction.txt")=0
       file_open_write 1,"MemoTxtTouchesFonction.txt"
         for NumLig%=1 to 12
             if NumLig%<10
                file_writeln 1,"0"+str$(NumLig%)
             else
                file_writeln 1,str$(NumLig%)
             end_if
         next NumLig%
       file_close 1
    end_if
    NumLig%=val(right$(STF$,len(STF$)-1))
    clear DlistTF% : file_load DlistTF%,"MemoTxtTouchesFonction.txt"
    item$=item_read$(DlistTF%,NumLig%)
    if message_input("Texte de la touche F"+str$(NumLig%),"Modifier (ou coller) le texte",item$)=1
       item$=message_text$
    else
       ModeTF%=1 : dir_change RepATF$ : timer_on TimerTF%
       to_foreground 0 : cls : print " Mode ''Lecture'' activé." : exit_sub
    end_if
    item_delete DlistTF%,NumLig% : item_insert DlistTF%,NumLig%,item$ :file_save DlistTF%,"MemoTxtTouchesFonction.txt"
    ModeTF%=1 : dir_change RepATF$ : timer_on TimerTF%
    to_foreground 0 : cls : print " Mode ''Lecture'' activé."
END_SUB

SUB ActiveTouchesTF()
    timer_off TimerTF%
    if ModeTF%=0
       ModeTF%=1
       cls : print " Mode ''Lecture Touches de Fonction'' activé."
    else
       ModeTF%=0
       cls : print " Mode ''Lecture'' et ''Programmation Touches de Fonction'' désactivés."
    end_if
    timer_on TimerTF%
END_SUB

SUB ActiveModeProgTF()
    to_foreground 0 : timer_off TimerTF%
    ModeTF%=2
    cls : print " Mode ''Programmation Touches de Fonction'' activé: choisir la touche de fonction à programmer."
    timer_on TimerTF%
END_SUB

SUB InstalleControleTouchesFonction()
  ' Form 0
    width 0,700 : height 0,60 : top 0,100 : left 0,30
    caption 0,"Controle des touches de fonction" : color 0,0,0,0 : font_color 0,255,255,255 : font_bold 0 : font_size 0,10
    hint 0," Gestion des touches de fonction "
    cls : print " Mode ''Lecture'' et ''Programmation'' désactivés.           [Pause/Attn] => Mode ''Lecture''"
  ' Les variables
    if variable("ModeTF%")=0 then dim ModeTF% : ModeTF%=0
    if variable("no%")=0 then dim no% : no%=number_objects : ' pour ceux qui programment avec des "noms d'objets par variable"
    if variable("RepTF$")=0 then dim RepTF$,RepATF$
    RepTF$="C:\ControleTouchesFonctionTF" :' Chemin à adapter à votre convenance
    if dir_exists(RepTF$)=0 then dir_make RepTF$
  ' Le Label
    if label("VerifTimerTF")=0 then label VerifTimerTF
  ' Le Timer
    if variable("TimerTF%")=0
       dim TimerTF% : TimerTF%=no%+1
       timer TimerTF% : timer_interval TimerTF%,200 : on_timer TimerTF%,VerifTimerTF : timer_on TimerTF%
    end_if
  ' DlistTF%
    if variable("DlistTF%")=0
       dim DlistTF% : DlistTF%=TimerTF%+1 : dlist DlistTF%
    end_if
    to_foreground 0
END_SUB


A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur En ligne
jjn4

avatar

Nombre de messages : 1755
Date d'inscription : 13/09/2009

MessageSujet: +++   Jeu 30 Nov 2017 - 19:20

Bonne idée. Ca rappelle de vieux souvenirs.
C'était sur Amstrad, je crois, qu'on pouvait faire ça ?
@
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://jjn4.e-monsite.com
Jean Claude

avatar

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

MessageSujet: Re: Contrôle des touches de fonction   Jeu 30 Nov 2017 - 19:58

Merci JJN4 (ou 42) d'avoir testé.
Sur Amstrad OUI, mais aussi avec QBasic.

Et aussi, d'évidence, avec Panoramic. Je viens de m'en servir pour reprendre un code de 2016 et je dois dire que quand on a en mémoire les textes des 8 touches de fonction, c'est très utile.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur En ligne
Jean Claude

avatar

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

MessageSujet: Re: Contrôle des touches de fonction   Sam 2 Déc 2017 - 13:37

Pas beaucoup de réactions, mais ça a donné des idées. Voir ici => http://panoramic.free-boards.net/t5534-multicopies-un-presse-papier-multiple#67355

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur En ligne
Contenu sponsorisé




MessageSujet: Re: Contrôle des touches de fonction   

Revenir en haut Aller en bas
 
Contrôle des touches de fonction
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Récupérer toutes les touches tapées
» Piano à 88 touches
» Affichier une infobulle au pointage d'un contrôle
» bibliothèque des touches du clavier
» Démarrage rapide-Etape5:Contrôle automatique des trains

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: