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
» mise a jour calculatrice
par JL35 Aujourd'hui à 14:14

» [solved] 3D_LINE How to ?
par papydall Aujourd'hui à 6:51

» supprimé
par joeeee2017 Dim 15 Oct 2017 - 20:02

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

» Convertisseur de base 10 de 2 à 36
par gigi75 Sam 14 Oct 2017 - 21:54

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

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

» Compilateur FBPano
par jean_debord Jeu 12 Oct 2017 - 9:53

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

» à propos de Panoramic_Editor [Résolu]
par Klaus Mar 10 Oct 2017 - 3:19

» Un petit "coucou" à tous les Panoramiciens !
par Jack Ven 6 Oct 2017 - 10:24

» Pourquoi le compilateur stagne
par mindstorm Mer 4 Oct 2017 - 20:38

» Panoramic ?
par Marc37 Mer 4 Oct 2017 - 0:39

» Premiers pas avec Arduino
par Marc37 Mer 4 Oct 2017 - 0:29

» Mise à jour PANOMAND
par jean_debord Mar 26 Sep 2017 - 11:33

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

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

Partagez | 
 

 Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT

Voir le sujet précédent Voir le sujet suivant Aller en bas 
Aller à la page : Précédent  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Suivant
AuteurMessage
Laurent (Minibug)

avatar

Nombre de messages : 2353
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 11:32

Citation :
Jean Claude a écrit:
   Je constate aussi que je décroche par rapport à votre vision, en clair je n'y comprend plus rien.
Citation :
Jack a écrit:
  Rassure-toi, tu n'es pas le seul. Moi non plus, je n'y comprend plus rien.

Bonjour jack !

En fait on voudrait retrouver le même principe que la fonction que Klaus utilise dans KGF :
res% = dll_call5("SendSingleKey",hnd%,VK%,ctrl%,alt%,shift%)

Peut être que le mieux placé pour répondre à notre question serait Klaus lui même qui pourra sûrement apporter une réponse moins confuse que nous et même expliquer par son code le principe que nous recherchons.

Merci pour tes efforts Jack ! Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
silverman

avatar

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

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 13:49

@Jack
C'est du détail,  mais l'outils "codes des touches" de PE ne renvoit plus toujours les bons codes de certains combinaisons(ex shift+ctrl donne 6 au lieu de 5)
A la base 'item_add' devait servir à ajouter des mots clés pour la coloration syntaxique, y aura t'il une autre commande en remplacement?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

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

MessageSujet: re   Dim 28 Mai 2017 - 14:06

Citation :Jean Claude a écrit:
   Je constate aussi que je décroche par rapport à votre vision, en clair je n'y comprend plus rien.Citation :Jack a écrit:
  Rassure-toi, tu n'es pas le seul. Moi non plus, je n'y comprend plus rien.



Ben...on est pas dans la merde... Laughing


En fait Silverman a très bien résumé la situation.
Plutôt que de demandé une série de commandes SYNEDIT, il me paraissait intéressant de se servir
des commandes clavier natives.
Or il n' existait pas de possibilité d' envoyer ces commandes clavier par programme.
d' où la demande d' une simulation de cet envoie comme le fait la fonction de KGF et j' ai employé le mot qui apparemment n' est pas approprié de TRIGGER_KEY en pensant que comme TRIGGER_CLICK simulait l' action de cliquer sur un bouton, TRIGGER_KEY simulerait l' action de taper sur une touche en ajoutant N pour que les codes des touches soient envoyés vers l' objet N. 
J' aurai peut être du nommé la commande  SEND_KEY VkCode,Ctrl,Shift,Alt.


Edit :


Il n' ya pas que Undo et Redo qui sont dispo par commande clavier (voir la liste de klaus ).
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

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

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 15:02

Yannick a écrit:
Plutôt que de demandér une série de commandes SYNEDIT, il me paraissait intéressant de se servir des commandes clavier natives......

Je me pose une question: est-ce que justement, ce n'est pas une imperfection de l'objet SYNEDIT qui n'aurait pas au départ toutes les possibilités clavier.
Si c'est le cas: toutes les demandes que l'on peut faire, pour une fonction qui ne serait pas native, sont vaines.

Je ne sais pas si je vais arriver à me faire comprendre, mais je vais tenter:
Prenons le cas de Ctrl+Z (undo):
J'ai l'intuition que si cette commande clavier n'est pas OK en natif pour l'objet Synedit dans Panoramic_Editor, alors toutes commandes (par programmation) concernant "undo" ne fonctionnera pas.
Je veux dire que Jack pourra répondre à toutes nos demandes, mais ce sera en vain tant que l'objet SYNEDIT ne sera pas au point. drunken

J'espère que j'ai été clair, mais j'ai un doute...

Si j'ai écris une connerie, je vous remercie à l'avance de m'expliquer pourquoi, plutôt que de rire sous cape...

A+


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5537
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 15:03

Jack a écrit:
Tant que je n'aurai pas compris à quoi tout cela peut bien servir, je fais une pause avec l'objet SYNEDIT. En attendant que ce mouvement brownien se décante, je reprends le 3ème but que je me suis fixé : mettre à jour le compilateur ...

N’étant pas encore  SYNEDITicien habile, je préfère la mise à jour du compilateur et aussi la possibilité pour le programmeur (du dimanche ou de toute la semaine) de définir ses propres fonctions à l’instar des SUB.

Je propose; je n'impose rien ! Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Jack
Admin
avatar

Nombre de messages : 1764
Date d'inscription : 28/05/2007

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 15:26

Comme le problème est de pouvoir détruire un texte dans un SYNEDIT et qu'il y a une lacune de ce côté là, je vais coder 2 commandes qui s'appliqueront aux objets EDIT, MEMO, COMBO, SPIN, MEMO_RICH, SYNEDIT:

TEXT_DELETE N,P,C qui supprime C caractères à partir de la position P dans l'objet de numéro N

SELECT_DELETE N qui supprime le texte sélectionné dans l'objet de numéro N

En effet, une commande similaire à SendSingleKey utilise la messagerie Windows et ne fonctionnera que sous Windows. Elle ne pourra pas être utilisée sous Android ou sous MACOS.
Ceci est contraire à mon principe de portage de Panoramic sous Android et MACOS.

De même CONTROLE X ne fonctionne que sous Windows.
Sur MAC, l'équivalent est COMMAND X et sur un Smartphone Android, je pense que cela n'existe pas.

J'essaye de porter sur le SYNEDIT d'Android et sur le SYNEDIT de MAC tout ce que je fais sur le SYNEDIT Windows. J'ai cependant un peu de retard, le SYNEDIT Windows est le plus avancé.

Voici la photo du SYNEDIT de mon Smartphone (un Samsung Note 3) prise il y a quelques minutes.
On y voit entre autres, la coloration des mots clés HEIGHT et WIDTH.


_________________
username : panoramic@jack-panoramic password : panoramic123


Dernière édition par Jack le Dim 28 Mai 2017 - 16:25, édité 5 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://panoramic.free-boards.net
Laurent (Minibug)

avatar

Nombre de messages : 2353
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 15:37

@ Jean claude :

Rassure toi, SYNEDIT est totalement au point !

D'ailleurs si tu utilises les raccourcis clavier de SYNEDIT (et là je ne parle pas de programmation Panoramic) tu verra qu'ils fonctionnent tous parfaitement !

Ce qui pose problème c'est la simulation depuis Panoramic par le biais des ON_KEY_...
C'est là où réside tout le problème...

Pour en avoir le cœur net, il suffit d'utiliser SYNEDIT depuis la dll de Klaus.
Tu verra que toutes les fonctions que Klaus à rajouté fonctionnent parfaitement !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

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

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Dim 28 Mai 2017 - 17:03

Laurent a écrit:
Rassure toi, SYNEDIT est totalement au point !

Bon, ben ça c'est au moins une bonne nouvelle Very Happy

Apparemment Jack a compris la raison de tout notre tapage Razz Embarassed et va corriger l'imperfection !

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

avatar

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

MessageSujet: re   Dim 28 Mai 2017 - 17:31

Cela ne résoudra en rien le problème.
On ne pourra toujours pas envoyer directement à l' objet les codes des touches par programmation.

On empile des commandes, c' est tout.
Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad Crying or Very sad
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jack
Admin
avatar

Nombre de messages : 1764
Date d'inscription : 28/05/2007

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Lun 29 Mai 2017 - 12:17

Voici disponible au téléchargement une nouvelle version qui répond à la question de Laurent:

Laurent a écrit:
Petite question bête :
Comment faites vous pour supprimer un texte déjà sélectionné ou une portion de texte ?
Je ne vois comment procéder. je suis surement passé a coté de quelques chose...

Cette version possède les 2 commandes qui s'appliquent aux objets EDIT, MEMO, COMBO, SPIN, MEMO_RICH, SYNEDIT:

TEXT_DELETE N,P,C qui supprime C caractères à partir de la position P dans l'objet de numéro N

SELECT_DELETE N qui supprime le texte sélectionné dans l'objet de numéro N

De plus, toutes les nouvelles commandes et fonctions, et même ces 2 dernières font partie de la liste de mots-clés de l'objet SYNEDIT et sont donc colorées.

Bon, cette fois, je retourne au compilateur. A bientôt.

_________________
username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://panoramic.free-boards.net
Yannick

avatar

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

MessageSujet: re   Lun 29 Mai 2017 - 12:48

Toujours bon à prendre....
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

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

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Lun 29 Mai 2017 - 20:13

Merci Jack pour cette nouvelle version.

Silverman a écrit:
@Jack
Serait il possible d'ajouter item_index(N) à la liste des commmandes synedit pour connaitre ne numéro de ligne ou est positionné le caret?

Je renouvelle cette demande, car je n'ai pas réussi à coder une SUB pour trouver le numéro de la ligne où se trouve le caret. Sauf si je recherche un texte là j'ai trouvé une solution, mais si le caret est sur un ligne vide c'est impossible.

Question comportement de l'éditeur, ça va plutôt bien quand ça coince il suffit d'attendre sans acquitter les messages en provenance de Windows et tout rentre dans l'ordre quand le compteur que tu as mis en place atteint 160.

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

avatar

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

MessageSujet: re   Lun 29 Mai 2017 - 20:44

Code:
dim_local i%,cp%,nc%,a$

cp% = caret_position(objet%)
if count(objet%)>0
  for i%=1 to count(objet%)
      a$=item_read(objet%,i%)
      nc%=nc%+len(a$)+2
      if nc%>cp%
        ligne%=i%
        exit_for
      end_if
  next i%
end_if
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

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

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Lun 29 Mai 2017 - 22:03

Bravo Yannick, ça marche!

J'ai un peu retapé: il y avait une erreur de syntaxe et il manquait un nom de SUB et j'ai changé a$ par ligne$.
Code:
SUB recherche_index(objet%)
    dim_local i%,cp%,nc%,line$
    cp% = caret_position(objet%)
    if count(objet%)>0
      for i%=1 to count(objet%)
          line$=item_read$(objet%,i%)
          nc%=nc%+len(line$)+2
          if nc%>cp%
             n%=i% : exit_for
          end_if
      next i%
    end_if
END_SUB

Il me reste à trouver comment renvoyer le caret en début de ligne (pour le cas où la ligne est vide et que le caret n'est pas au début), car ça pose un problème pour la recherche.

Mais je m'arrête là pour ce soir, car je n'en peu plus. Very Happy

A+

PS: En fait ce problème de début de ligne fausse le résultat de ta SUB.
Si le caret est en début de ligne le résultat est bon, sinon il est augmenté d'autant de ligne vide qu'il y a après la caret.

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

avatar

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

MessageSujet: re   Lun 29 Mai 2017 - 22:13

Code:
SUB recherche_index(objet%)
    dim_local i%,cp%,nc%,line$,ncp%
    cp% = caret_position(objet%)
    if count(objet%)>0
      for i%=1 to count(objet%)
          line$=item_read$(objet%,i%)
          ncp%=nc%
          nc%=nc%+len(line$)+2
          if nc%>cp%
             n%=i%
            caret_position objet%,ncp%           
            exit_for
          end_if
      next i%
    end_if
END_SUB
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

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

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Lun 29 Mai 2017 - 22:25

J'ai essayé mais ça ne change rien dans mon code.

Il y a peut-être une mauvaise utilisation de ma part: soit je ne l'appelle pas au bon moment, soit le traitement qui suit n'est pas bon.

Mais là, j'en ai marre, c'est inutile que je m'acharne Very Happy

En tous cas merci.

Au passage, j'ai comme l'impression que tu as (COMME MOI) un problème de copier/coller avec Panoramic_Editor.
De temps en temps, ça déconne sévère. Le collage est incomplet et il ne se fait pas à la position du caret.

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

avatar

Nombre de messages : 10072
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Mar 30 Mai 2017 - 0:32

Un exemple tout simple de ce que l'on peut faire avec Synedit de Panoramic:
Code:
' essai_Synedit_Panoramic.bas

dim res%, SynHnd%, s$

synedit 1 : full_space 1

dll_on "KGF.dll"

SynHnd% = handle(1)
set_focus 1


res% = dll_call5("SendSingleKey",SynHnd%,65,0,0,0) : ' insertion d'un "a"
res% = dll_call5("SendSingleKey",SynHnd%,65,0,0,1) : ' insertion d'un "A"
res% = dll_call5("SendSingleKey",SynHnd%,65,1,0,0) : ' envoi de ctrl/A
pause 200
res% = dll_call5("SendSingleKey",SynHnd%,67,1,0,0) : ' envoi de ctrl/C
pause 200
s$ = clipboard_string_paste$
message s$

end
Désolé, c'est en utilisant KGF.dll que j'y arrive. Mais c'est bien le Synedit de Panoramic, pas celui de KGF.dll !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

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

MessageSujet: re   Mar 30 Mai 2017 - 1:54

C' est quand même bête de tout avoir et de ne pas pouvoir s' en servir.
Empiler les commandes alors qu' une seule suffit pour toutes les avoir.
Rolling Eyes
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10072
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Mar 30 Mai 2017 - 2:16

Patience, Yannicl ! Jack en es tout au début de l'implémentation de Synedit. Il a bien dit qu'il veut faire de sorte que ce soit identique sous Windows, Andoid et MacOs. C'est une vraie gageure, compte tenu des différences des systèmes et même des claviers. Alors, soyons patients et attendons le résultat, d'autant qu'en attendant, nous avons deux solutions parfaitement opérationnelles, sous Windows:
- Synedit de Panoramic, avec le soutien des fonctions de KGF.dll via le handle du Synedit
- Synedit de KGF.dll avec ses fonctions de support assez complètes (et évolutives selon les besoins des Panoramiciens)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Laurent (Minibug)

avatar

Nombre de messages : 2353
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Mar 30 Mai 2017 - 5:00

A propos de SYNEDIT justement...

Est ce que quelqu'un sait si les raccourcis des fonctions installées nativement dans SYNEDIT sont les mêmes sur Windows et sur MAC comme par exemple CTRL+X, CTRL+C et CTRL+V pour le couper, copier et coller ?

Car en fait ce qu'il faut ce n'est pas forcément l'émulation des fonctions SYNEDIT en elles même, mais bien une fonction qui émule le lancement des touches que ce soit sur WINDOWS ou sur MAC.

Et là du coup il doit bien y avoir une fonction qui correspond au SEND_KEY de Klaus dans KGF sur MAC. Puisqu’à priori le problème de Jack se situe à ce niveau !

Je sais pas si je suis assez clair ?!!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jack
Admin
avatar

Nombre de messages : 1764
Date d'inscription : 28/05/2007

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Mar 30 Mai 2017 - 7:51

Je ne comprends toujours pas pourquoi vous voulez émuler l'envoi des touches CTRL+X, CTRL+C et CTRL+V sur un objet.

On obtient exactement la même chose en faisant :

(N est le numéro d'objet d'un EDIT, d'un MEMO, d'un COMBO, d'un SPIN, d'un RICH_EDIT, d'un SYNEDIT)

pour CTRL+X

1 - on mémorise dans mem$ ce qui est sélectionné
mem$=SELECT_READ$(N)
2 - on efface ce qui est sélectionné
SELECT_DELETE N


pour CTRL+C

on mémorise dans mem$ ce qui est sélectionné
mem$=SELECT_READ$(N)


pour CTRL+V

on insère à la position du CARET ce qui est mémorisé dans mem$
TEXT_INSERT N,CARET_POSITION(N),mem$

_________________
username : panoramic@jack-panoramic password : panoramic123
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://panoramic.free-boards.net
Laurent (Minibug)

avatar

Nombre de messages : 2353
Age : 51
Localisation : Vienne (86)
Date d'inscription : 10/02/2012

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Mar 30 Mai 2017 - 9:51

bonjour jack !

Tout à fait d'accord avec toi mais avec quelques petits bémols !

- Dans ce cas le CTRL+Z et CTRL+SHIFT+Z (ANNULER et RÉTABLIR) est inopérant.
- D'autre part, plusieurs raccourcis natifs de SYNEDIT ne seront pas gérable par programmation.

Voila pourquoi l'utilité de cette fonction et voila aussi pourquoi Klaus a mis en place le SEND_KEY
qui est utilisé à la fois pour SYNEDIT et aussi pour de nombreux autre cas.

Je dois me sauver. Bonne journée... Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

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

MessageSujet: re   Mar 30 Mai 2017 - 11:25

Je ne dirai plus mieux.
Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Klaus

avatar

Nombre de messages : 10072
Age : 68
Localisation : Ile de France
Date d'inscription : 29/12/2009

MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   Mar 30 Mai 2017 - 11:33

@Jack:
Citation :
Je ne comprends toujours pas pourquoi vous voulez émuler l'envoi des touches CTRL+X, CTRL+C et CTRL+V sur un objet.
Je crois qu'n réalité, il ne s'agit pas d'émuler quoi que ce soit. Je pense plutôt qu'il s'agit de la volonté d'exécuter des fonctions natives de Synedit qui sont normalement commandées par des raccourcis au niveau du clavier (sélectionner tout, défaire, refaire, ...). Synedit est un composant puissant avec de multiples fonctions, et on a évidemment envie de pouvoir s'en servir par programme, ce qui est parfaitement possible par l'envoi des différentes combinaisons de touches codées dans Synedit.

Mais ça va évidemment plus loin. Il est clair que le même raisonnement s'applique à d'autres objets Panoramic, et même au-delà, pour gérer des objets d'applications externes (traitements d'images, ...). Dans tous ces cas, il peut être très utilise d'envoyer un caractère quelconque comme s'il avait été frappé au clavier, même si ce composant n'a pas le focus.

Pour un objet Panoramic, on peut bien sûr spécifier le numéro d'objet pour indiquer la cible. Par contre, pur un objet externe il faut impérativement passer par le handle de l'objet. Et c'est exactement ce que fait la fonction
Code:
res% = dll_call5("SendSingleKey",hnd%,VK%,ctrl%,alt%,shift%)
de KGF.dll.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://klauspanoramic.comxa.com/index.html
Yannick

avatar

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

MessageSujet: re   Mar 30 Mai 2017 - 11:43

Tout à fait.
N n' est pas forcément un numéro d' objet Panoramic,
on aurait pu le remplacer par H pour handle de l' objet ce qui ouvre encore plus les possibilités.

Même l' objet Memo peut en bénéficier.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT   

Revenir en haut Aller en bas
 
Version instantanée V 0.9.28i9 possédant l'objet SYNEDIT
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 9 sur 10Aller à la page : Précédent  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  Suivant
 Sujets similaires
-
» version instantanée du 22 mai 2010: redimensionner SPRITE
» PANORAMIC_IDE: version instantanée du 25 septembre 2010
» Version instantanée 26 septembre 2014 : PANORAMIC V 0.9.26i2
» Version instantanée du 7 janvier 2015 : PANORAMIC V 0.9.26i5
» PANORAMIC_IDE: version instantanée du 20 septembre 2010

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Ce qui est en cours ...-
Sauter vers: