Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisEst-il possible via JSL d'obtenir l'emplacement de la souris puis d'ouvrir une nouvelle fenêtre à droite de celle-ci ?Cela semble assez simple, mais en parcourant l'aide aux scripts, je n'ai pas pu le comprendre.merci pour tous les conseils!
Steve
Automatisation et scriptsRe : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisJe pourrais le faire fonctionner via Windows Powershell ICE mais pas Windows Powershell, je ne sais pas ce que cela signifie, mais je le lance simplement au cas où quelqu'un d'autre le ferait !
Re : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisJe ne connais pas trop PowerShell non plus, je ne l'utilise que lorsque je le dois. Vous pouvez essayer d'exécuter cette commande
Add-Type -AssemblyName System.Windows.Forms
$X = [System.Windows.Forms.Cursor]::Position.X
$Y = [System.Windows.Forms.Cursor]::Position.Y
Write-Output "X: $X | Y: $Y"
directement dans PowerShell et voyez si vous obtenez la même erreur. C'est à ce moment-là que j'exécute PowerShell via la ligne de commande :

Si j'exécute la commande via Windows à la recherche de PowerShell, elle semble renvoyer une erreur similaire :

mais si je le réexécute après les erreurs, il semble renvoyer une chaîne sans coordonnées ou les coordonnées comme il se doit.
Re : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisJMP Pro 16.0, Windows 10 Entreprise version 10.0.19044
Re : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisQuelle est votre version de JMP ?
Utilisez-vous Windows 10 ?
Re : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourismerci pour le code suggéré.Je ne suis pas familier avec PowerShell, j'ai donc simplement récupéré votre code, je l'ai exécuté et j'ai obtenu ceci dans le journal :
"Add-Type : Impossible d'ajouter un type. La définition de nouveaux types n'est pas prise en charge dans ce mode de langage.
À la ligne : 1 caractère : 1
+ Ajouter-Type -AssemblyName System.Windows.Forms
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : PermissionDenied : (:) [Add-Type], PSNotSupportedException
+ FullyQualifiedErrorId : CannotDefineNewType,Microsoft.PowerShell.Commands.AddTypeCommand
Impossible de trouver le type [System.Windows.Forms.Cursor].
À la ligne : 2 caractères : 6
+ $X = [System.Windows.Forms.Cursor] :: Position.X
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation : (System.Windows.Forms.Cursor:TypeName) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound
Impossible de trouver le type [System.Windows.Forms.Cursor].
À la ligne : 3 caractères : 6
+ $Y = [System.Windows.Forms.Cursor] ::Position.Y
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation : (System.Windows.Forms.Cursor:TypeName) [], RuntimeException
+ FullyQualifiedErrorId : TypeNotFound
X : | Y :"
Je n'ai rien vu renvoyé que je pourrais utiliser pour la position de la souris.Est-ce que j'ai raté quelque chose ou dois-je faire quelque chose pour configurer PowerShell ?J'utilise deux moniteurs et j'exécute le script sur mon moniteur principal.
Steve
Re : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisSi vous utilisez Windows, vous pouvez utiliser PowerShell. Voici un exemple (ce serait peut-être une bonne idée de renvoyer également le nombre d'affichages et pas seulement les coordonnées) :
Names Default To Here(1);
powershell_variables = Eval Insert("\[Add-Type -AssemblyName System.Windows.Forms
$X = [System.Windows.Forms.Cursor]::Position.X
$Y = [System.Windows.Forms.Cursor]::Position.Y
Write-Output "X: $X | Y: $Y"]\", "¤");
//fix quotes and cleanup
quote="\!"";
escapedquote = "\!\\!"";
Substitute Into(powershell_variables, quote, escapedquote);
r = Trim Whitespace(Run Program(
Executable( "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" ),
Options({powershell_variables}),
Read Function("text")
));
Je les ai généralement gérés en ouvrant de nouvelles fenêtres au-dessus de la fenêtre actuelle (), puis en calculant l'emplacement en fonction de cela.
Re : Faire apparaître une nouvelle fenêtre à côté de l'emplacement actuel de la sourisLa seule façon dont je pense que l'on peut obtenir la position de la souris depuis n'importe où sur l'écran serait via l'extension JMP dans R ou Python.Une fois la position de la souris renvoyée, JSL peut créer la nouvelle fenêtre (), puis déplacer la fenêtre () vers la position souhaitée.