Aller au contenu


Photo

Clipboard


  • Please log in to reply
16 replies to this topic

#1 jeje

jeje

    Membre

  • Membres
  • Pip
  • 5 Messages :

Posté 13 novembre 2017 - 22:49

Bonsoir,

 

- Je cherche à savoir s'il est possible d'effectuer un "coller" du clipboard dès que l'on clique en dehors de l'application ?

Cette application sert à gérer des raccourcis.

 

- Créer un raccourcis vers un fichier qui peut parfois avoir une partie de son nom modifié, il faudrait lister le contenu d'un dossier, effectuer une recherche de mots clés et ouvrir directement le fichier correspondant à la recherche... Je sèche complètement,

 

Merci à vous !



#2 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 959 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 14 novembre 2017 - 12:24

Bonjour,

 

Coller par un Click, je ne pense pas que ça puisse marcher. 

Par contre, tu peux faire du glisser-déposer. C'est plus standard aux normes et Xojo le gère parfaitement. Tu prends un objet dans ta fenêtre et tu le dépose ailleurs (fichier ou texte ou autre).

 

La seconde partie ? pas compris...


Ce message a été modifié par BorakLeRouge - 14 novembre 2017 - 12:24 .

Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#3 jeje

jeje

    Membre

  • Membres
  • Pip
  • 5 Messages :

Posté 14 novembre 2017 - 12:58

Le glisser/déposer pourrait être une solution mais cette manipulation doit dans certains cas être effectuée toutes les 15s... Ça fait beaucoup de glisser/déposer.

Pour ton glisser/déposer ça m'intéresse quand-même, comment tu fais un glisser/déposer de texte ?

 

Pour la seconde partie, c'est un simple bouton qui pointe vers un fichier mais celui-ci peut avoir changé de nom :

Par exemple :

base de données 15112017 ou base de données 17112017, il faudrait ouvrir directement le fichier contenant "base de données"

 

Merci pour ta réponse :)



#4 zekiller28

zekiller28

    Admin qui mord

  • Administrateurs
  • PipPipPipPipPipPipPipPipPip
  • 10 646 Messages :
  • Configuration:Toutes sortes de Mac du PPC à l'Intel et toute sorte de MacOS X De Panther Client à Maverick.
  • Sexe:Masculin
  • Localisation:Saint-Hilarion (78)

Posté 14 novembre 2017 - 20:59

Hello,

 

je ne suis pas sûr d'avoir bien compris mais en faisant une recherche dans le dossier précis et en retenant le fichier qui contient la chaine (instr) dans son nom que tu cherches devrait faire l'affaire je pense.


Pour le coller par un clic, je ne vois pas pourquoi ça ne fonctionnerait pas (ou alors j'ai pas compris).

On copie le presse papier dans une variable C

On a un bouton

Quand on clique sur le bouton, le champ Editfield.text=C

non ?   :zz-big-cafe:

 

On peut même agréger un tableau de string toutes les 15 secondes via un Timer pour garder les différents presse papiers.

 

On relisant le post initial, je crois avoir compris. Tu veux que le presse papier se colle où une fois que l'application a perdu son focus (donc qu'elle est plus active au premier plan) ?


Le site de ToolsX
Le site de ToolsXOptimizer

Apple Certified Mac Management Basics 10.12
Apple Certified Mac Management Basics 10.9 English
Apple Certified Mac Integration Basics 10.9 English
Apple Certified Associate Mac Integration 10.8
Apple Certified Mac Management Basics 10.8

#5 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 959 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 14 novembre 2017 - 21:16

Oui, ce n'est pas très clair, il nous faudrait plus de détails.

 

Sinon, pour le glisser-déposé :

 

Pour faire un DragItem à partir de la source par l'évenement click :

Function MouseDown(X As Integer, Y As Integer) As Boolean
  Dim d As DragItem
  d = New DragItem(Self, X, Y, Me.Width, Me.Height)
  d.text = 'un beau texte'
  d.Drag // Allow the drag
End Function

Dans un autre programme, dans l'évenement OPEN, on active la possibilité de dépot de texte :

Me.AcceptRawDataDrop("text")

Et on reçoit le texte par l'élément DropObject :

Sub DropObject (obj As DragItem)
  If obj.TextAvailable Then
    variable = obj.text
  End If
End Sub

Qu'est-ce qu'on est actif ce mois-ci :)


Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#6 jeje

jeje

    Membre

  • Membres
  • Pip
  • 5 Messages :

Posté 15 novembre 2017 - 01:34

Hello,

 

je ne suis pas sûr d'avoir bien compris mais en faisant une recherche dans le dossier précis et en retenant le fichier qui contient la chaine (instr) dans son nom que tu cherches devrait faire l'affaire je pense.


Pour le coller par un clic, je ne vois pas pourquoi ça ne fonctionnerait pas (ou alors j'ai pas compris).

On copie le presse papier dans une variable C

On a un bouton

Quand on clique sur le bouton, le champ Editfield.text=C

non ?   :zz-big-cafe:

 

On peut même agréger un tableau de string toutes les 15 secondes via un Timer pour garder les différents presse papiers.

 

On relisant le post initial, je crois avoir compris. Tu veux que le presse papier se colle où une fois que l'application a perdu son focus (donc qu'elle est plus active au premier plan) ?

Je souhaite que le "coller" se fasse dans une autre application (donc une en arrière plan), plus précisément dans un navigateur dans un champs texte.

Dans mon boulot nous avons énormément de tâches répétitives et nous notons les mêmes choses à la main. Pour l'instant mon application permet uniquement de copier un texte inclut dans une liste qu'il faut coller manuellement dans le navigateur et je souhaite automatiser ce dernier point dès que l'on clique en dehors de mon application.

 

Concernant le lien vers un fichier, c'est très simple (plus facile à dire qu'à faire) :

J'ai un simple lien de raccourcis vers un fichier local sauf qu'une personne le met systématiquement à jour du style "base de données x", "base de données z" et forcément mon lien est corrompu et je souhaite que dans ce dossier le fichier contenant "base de données" soit directement ouvert puisqu'il y en a toujours qu'un seul.

 

@BorakLeRouge

Il faudrait dans ce cas là pouvoir glisser un élément d'une liste à l'extérieur de l'application (un champs de texte dans un navigateur)


Ce message a été modifié par jeje - 15 novembre 2017 - 01:45 .


#7 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 959 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 15 novembre 2017 - 05:48

Ca marche le Glisser-Deposer vers une application exterieure (pour le texte et les images).


Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#8 jeje

jeje

    Membre

  • Membres
  • Pip
  • 5 Messages :

Posté 15 novembre 2017 - 13:36

J'ai lu sur un forum :

"If you really want to use the clipboard object still, otherwise omit it. You can use a SendKeys function to do all sorts of neat things Xojo Classes instantly do not do. (Ie automate copy paste (any key events) between two different apps... using the object handles)"

 

Comment fonctionne la fonction SendKeys, je n'ai pas vu de documentation dessus ?

 

Cela pourrait m'aider à effectuer un "coller" dans le navigateur et éventuellement à envoyer d'autres commandes


Ce message a été modifié par jeje - 15 novembre 2017 - 15:38 .


#9 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 959 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 16 novembre 2017 - 21:48

Sendkeys ? Pas trouvé non plus.

 

Le pb c'est que tu veux coller ce qui est choisi dans ton application vers une autre simplement en cliquant...

Je ne vois pas comment ça va être possible. Car c'est dans l'application cible qu'il faut faire le collage. Ca dépasse mes compétences.

 

Par contre, prendre une ligne de ta liste et la déposer dans un champ de navigateur. Donc un Glisser-Déposer, ça marche presque tout seul...


Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#10 zekiller28

zekiller28

    Admin qui mord

  • Administrateurs
  • PipPipPipPipPipPipPipPipPip
  • 10 646 Messages :
  • Configuration:Toutes sortes de Mac du PPC à l'Intel et toute sorte de MacOS X De Panther Client à Maverick.
  • Sexe:Masculin
  • Localisation:Saint-Hilarion (78)

Posté 19 novembre 2017 - 22:11

Je pense que l'appel à un AppleScript pourrait t'aider à coller le contenu de ton presse papier dans ton navigateur.

 

@Borak : on est au taqueeeeet !  :zz-big-bien:


Le site de ToolsX
Le site de ToolsXOptimizer

Apple Certified Mac Management Basics 10.12
Apple Certified Mac Management Basics 10.9 English
Apple Certified Mac Integration Basics 10.9 English
Apple Certified Associate Mac Integration 10.8
Apple Certified Mac Management Basics 10.8

#11 jerem06

jerem06

    Membre

  • Membres
  • Pip
  • 7 Messages :
  • Configuration:Windows 7 64 bits
  • Sexe:Masculin

Posté 12 janvier 2018 - 01:25

Merci à vous pour vos tuyaux :)

 

Concernant la recherche d'un fichier qui aurait partiellement changé de nom c'est réglé : l'application liste le contenu d'un dossier dans une listbox et une recherche est effectuée dans la listbox. Seule limite, la recherche fonctionne uniquement sur une mot commençant par "xxx" et non contenant "xxx". En tout cas ça fonctionne très bien et c'est quasi instantané.

 

Je cherche toujours à effectuer un "coller" automatique de texte dès que l'on clique en dehors de l'application, le coller doit se faire dans un champs texte d'une page web affiché par un navigateur mais je ne trouve pas de solution. Le programme sera utilisé sur Windows 7...



#12 Tom25

Tom25

    Membre d'honneur

  • En attente
  • PipPipPipPipPipPip
  • 1 084 Messages :
  • Configuration:MacBook Pro et iMac INTEL
  • Sexe:Masculin
  • Localisation:Besançon (25)
  • Passions:VTT, Ski, plongée en masque et palmes.
    J'aime aussi les femmes, en fait, c'est plutôt elles qui m'aiment (dans mes rêves) :-)) .

Posté 12 janvier 2018 - 13:55

Je ne crois pas qu'il existe l'instruction SendKeys dans Xojo. Apparement c'est un truc à programmer soi-même :

Ou à récupérer auprès de quelqu'un qui l'a fait. Un pote qui développe sous Windows m'a parlé de cette fonction, mais il ne développe pas avec Xojo.

Peut-être des infos ici : https://forum.xojo.c...endkey-function


Mon site web où je me présente et où se trouvent mes chtits programmes.
J'ai un iMac Intel et un MacBookPro sous Snow Leopard en réseau via une LiveBox, un iPod touch, un iPhone 4 et un iPad 1.

#13 jerem06

jerem06

    Membre

  • Membres
  • Pip
  • 7 Messages :
  • Configuration:Windows 7 64 bits
  • Sexe:Masculin

Posté 12 janvier 2018 - 23:35

Ou envoyer une requête via le terminal sous Windows, c'est un vrai casse tête.



#14 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 959 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 14 janvier 2018 - 10:00

J'en reviens toujours à mon idée : Le glisser-déposé


Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#15 jerem06

jerem06

    Membre

  • Membres
  • Pip
  • 7 Messages :
  • Configuration:Windows 7 64 bits
  • Sexe:Masculin

Posté 02 mars 2018 - 01:56

J'ai réussi en créant un fichier VB à part qui permet d'envoyer la commande au navigateur :)

 

J'ai un nouveau problème tout bête, comment ouvrir un fichier HTML ou autre via un navigateur en particulier (pas forcément celui par défaut) en indiquant son chemin/sa cible ?

Est-il possible que le programme puisse vérifier ou changer le navigateur par défaut ?

 

Merci !



#16 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 959 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 02 mars 2018 - 07:40

Pour ouvrir un fichier HTML par le navigateur par défaut, c'est facile.

Tu fais pointer un folderitem vers ton fichier. Ensuite, tu passes par la méthode Launch :

ZeFolderitem = getfolderitem('adressedufichier')
ZeFolderitem.launch

(Si je ne me trompe pas, je le fais de mémoire).

 

Par contre, c'est obligatoirement le navigateur par défaut.
Tu peux aussi utiliser le navigateur intégré par une classe spécifique.


Ce message a été modifié par BorakLeRouge - 02 mars 2018 - 07:40 .

Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#17 jerem06

jerem06

    Membre

  • Membres
  • Pip
  • 7 Messages :
  • Configuration:Windows 7 64 bits
  • Sexe:Masculin

Posté 14 mai 2018 - 23:08

Merci, j'ai tout simplement créé des raccourcis/favoris à partir des navigateurs concernés et le programme pointe vers ces favoris qui s'ouvrent avec le bon navigateur qui n'est pas forcément celui par défaut.

 

J'ai réussi à envoyer des commandes sendkey via des fichiers vbs se trouvant sur un serveur, le problème est que celui-ci est très lent et les opérations ne se font pas systématiquement correctement/dans le bon ordre même en y intégrant des pauses entre chaque commande envoyée.

 

Est-il possible d'intégrer ce code visual basic dans real basic afin d'éviter de passer par ce fameux serveur ?

 

Voici le code :

 

Set WshShell = WScript.CreateObject("WScript.Shell")
WshShell.AppActivate "Google Chrome"

sleep(50)
WshShell.SendKeys "^v"

sleep(50)
WshShell.SendKeys"{TAB}"

sleep(50)
WshShell.SendKeys"{TAB}"

sleep(50)
WshShell.SendKeys"{TAB}"

sleep(50)
WshShell.SendKeys"{ENTER}"

 

Dernière question, je souhaite rechercher un texte dans un fichier Excel et s'il est trouvé de l'extraire dans un champ ?


Ce message a été modifié par jerem06 - 14 mai 2018 - 23:47 .





0 utilisateur(s) en train de lire ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)