Utilitaire Windows pour afficher la touche sur laquelle j'appuie à l'écran [fermé]

52

Je forme à distance un grand groupe de personnes et je couvrirai un certain nombre de touches de raccourci d'applications.

J'ai vu l' affichage à l'écran des frappes de souris de MousePose ; Existe-t-il un produit similaire pour Windows?

MousePose Screenshot

Les autres fonctionnalités de MousePose (pointeurs de souris sophistiqués, etc.) ne me sont pas vraiment utiles, mais uniquement le menu OSD des touches.

richardtallent
la source

Réponses:

36

KeyPosé est une alternative gratuite à MousePosé pour Windows. Vous pouvez le voir en action dans le screencast .

Voici un exemple de capture d'écran:

texte alternatif

John T
la source
@richard tu es plus que bienvenu!
John T
4
Je pense qu'il a quelques problèmes. Vous ne pouvez pas modifier la position d'affichage des touches. Parfois, la zone grise continue de s'afficher même si vous n'appuyez sur aucune touche. De plus, la touche victoire / super touche ne s'affiche pas. Les combinaisons qui impliquent plus de deux touches, comme ctrl + alt + c, sont affichées de manière étrange, comme CTRL d'abord, puis ALT (je suppose que cela devrait afficher CTRL + ALT) et enfin CTRL + ALT + C. C'est mieux que rien, mais je pense qu'il y a de meilleures options.
Alter Lagos
N'enregistre pas les touches de tabulation pour une raison quelconque ...
laggingreflex
N'enregistre pas les combinatoins WIN, ne montre pas CTRL + SHIFT + ESC. Meh
Ev0oD
1
Utilisez Carnac ci-dessous. J'ai testé les deux et Carnac vous propose différentes options visuelles. github.com/bfritscher/carnac/releases/tag/v3-beta
Kai Noack
13

Je recommande fortement Carnac . C'est un projet gratuit hébergé sur GitHub.

Un utilitaire de journalisation et de présentation du clavier pour les présentations, les screencasts et pour vous aider à devenir un meilleur utilisateur du clavier.

Il est bien exécuté, bien conçu et également en open source sur GitHub .

Capture d'écran

Trouvez une version fork contenant des corrections et une visualisation de l'entrée de la souris ici: https://github.com/bfritscher/carnac/releases/tag/v3-beta

Rburte
la source
Intéressant, mais pas aussi beau que KeyPosé.
Basj
La page du projet fournit uniquement un carnac.applicationfichier, la vidéo youtube youtube.com/watch?v=qSUDfzUkwnc montre un fichier Carnac.exe. Juste après, j'ai réalisé que je pouvais lancer carnac.applicationWindows et télécharger et installer le programme. J'ai trouvé le zip / exe aussi ici: github.com/downloads/Code52/carnac/Carnac.zip
Kai Noack
2
@Basj Carnac est beaucoup plus "beau" que KeyPosé (qui ne montre que les lettres en clair). Avec Carnac, vous pouvez modifier l’aspect des touches affichées (taille de la police, opacité, couleurs).
Kai Noack
@ KaiNoack Je veux dire que le style par défaut de Carnac n'est pas aussi élégant et minimaliste que Keyposé. La conception par défaut devrait être améliorée;)
Basj
Comment changer la position de la zone d'affichage de la frappe? Je peux sembler trouver n'importe quelle documentation.
Jdhao
10

Je voudrais partager mon outil - Keycastow.

https://brookhong.github.io/2014/04/28/keycast-on-windows.html

entrez la description de l'image ici

Brook Hong
la source
1
Bonne chose! Aussi, LICECap est génial aussi, je n'en savais rien :)
LogicDaemon Le
@brookhong Qu'as-tu utilisé pour créer le giff animé?
Ricardo C
@RicardoC C'est licecap, cockos.com/licecap
ruisseau hong
Microsoft Security Essentials considère cela comme une menace. Tant pis!
Rath
1
Cet outil n'est pas téléchargeable en tant que binaire. vous devez le construire vous-même, ce qui est un problème pour moi car je n'ai pas la permission.
Lqueryvg
5

J'ai écrit un script AutoHotkey_L à cette fin.

Pour l’exécuter, utilisez AutoHotkey_L ( direct dl ), c’est FOSS. En outre, avec AutoHotkey, vous pouvez compiler un script au format EXE (simplement ).Ahk2Exe.exe /inDisplayPressedKeyOnScreen.ahk/outDisplayPressedKeyOnScreen.exe

Il peut afficher les touches enfoncées, de type OSD ou standard, situées près du curseur de la souris. En outre, il affiche les clics des boutons de la souris et le défilement à la molette.

(notez que l'image et le flou sont créés à des fins d'illustration, le script lui-même n'affiche que du texte sans aucune perturbation) Capture d'écran

Le script de Heres (copier et coller dans le bloc-notes, enregistrer sous le nom DisplayPressedKeysOnScreen.ahk):

#NoEnv
#SingleInstance force
#InstallKeybdHook

Global KeyStates, MouseState, ClickCount, IdleDelay, LargeDisplay

IdleDelay=3000

LargeDisplay=1
; 0 = Tooltip near mouse pointer
; 1 = Big pane at screen bottom

If LargeDisplay
{
;Initializing GUI
;modded func originated from http://www.autohotkey.com/board/topic/8190-osd-function/

SysGet Monitor, Monitor

GUIx := MonitorLeft
GUIw := MonitorRight - MonitorLeft
GUIh := (MonitorBottom - MonitorTop) * GUIw * 0.00003
If (GUIh > ((MonitorBottom - MonitorTop) * 0.3))
    GUIh := (MonitorBottom - MonitorTop) * 0.3

opacity=230
fname="Tahoma"
fsize:=GUIh * 0.65 ; really, pixel = 0.75 point, but with 0.75 lowercase letter with lower part (like "g") get cut
fcolor=cccccc
bcolor=222222
fformat="600"

Gui +LastFound +AlwaysOnTop +ToolWindow -Caption
Gui Margin, 0, 0 ;pixels of space to leave at the left/right and top/bottom sides of the window when auto-positioning.
Gui Color, ffffff ;changes background color
Gui Font, s%fsize% w%fformat%, %fname%

;    0x80 = SS_NOPREFIX -> Ampersand (&) is shown instead of underline one letter for Alt+letter navigation
Gui Add, Text, c%bcolor% Center +0x80 w%GUIw% h%GUIh% BackgroundTrans VblkOsdCtrlName, tesT test test
Gui Add, Text, c%fcolor% Center +0x80 w%GUIw% h%GUIh% BackgroundTrans VblkOsdCtrlName2 xp-3 yp-3 , tesT test test

WinSet ExStyle, +0x20 ; WS_EX_TRANSPARENT -> mouse klickthrough
WinSet TransColor, ffffff %opacity%
}


TrayTip %A_ScriptName%, To Exit`, press the Right Windows logo key.

Loop
{
Input SingleKey, L1 V M I B, {LControl}{RControl}{LAlt}{RAlt}{LShift}{RShift}{LWin}{AppsKey}{F1}{F2}{F3}{F4}{F5}{F6}{F7}{F8}{F9}{F10}{F11}{F12}{Left}{Right}{Up}{Down}{Home}{End}{PgUp}{PgDn}{Del}{Ins}{BS}{Capslock}{Numlock}{PrintScreen}{Pause}
GetKeyStates()

;    IfInString ErrorLevel, EndKey
;   CollectedText .= (CollectedText =="" ? "" : " + " ) . SubStr(ErrorLevel, 8)
If SingleKey
{
    SingleKeyText=
    If (SingleKey==Chr(27))
    SingleKeyText=Esc
    Else If (SingleKey==Chr(32))
    SingleKeyText=Space

    If (GetKeyState("LControl", "P") || GetKeyState("RControl", "P"))
    {
    If (SingleKey==Chr(10) && EnterPressed)
        SingleKeyText=Enter
    Else If (SingleKey >= Chr(1) && SingleKey <= Chr(26)) ; With "M" in Input, Ctrl-A through Ctrl-Z correspond to Chr(1) through Chr(26)
        SingleKeyText := Chr(Asc("A")-1+Asc(SingleKey))
    } Else {
    If (SingleKey==Chr(10))
        SingleKeyText=Enter
    }

    If Not SingleKeyText
    SingleKeyText:=SingleKey
    ShowKeys(KeyStates . SingleKeyText)
;    . (MouseState ? "`n" . MouseState : "")
    EnterPressed=0
    GoSub ClearMouseState
} Else {
    ShowKeys(SubStr(KeyStates, 1, -3) . (MouseState ? " + " . MouseState : ""))
}
SetTimer TooltipOff, % -IdleDelay
}

RWin::
ExitApp

~*Enter::
EnterPressed=1
return

~*LButton::
~*RButton::
~*MButton::
~*XButton1::
~*XButton2::
MouseState := "Mouse " . SubStr(A_ThisHotkey, 3) . " Pressed"
MouseTooltip()
return

~*WheelDown::
~*WheelUp::
~*WheelLeft::
~*WheelRight::
MouseState := "Mouse " . SubStr(A_ThisHotkey, 3)
MouseTooltip()
return

~*LButton Up::
~*RButton Up::
~*MButton Up::
~*XButton1 Up::
~*XButton2 Up::
;    MsgBox %A_PriorHotkey%`n%A_ThisHotkey%
If (A_PriorHotkey == SubStr(A_ThisHotkey, 1, -3) && A_TimeSincePriorHotkey < 200)
{
    ClickCount++
    Suffix := " Clicked " . ClickCount . "x"
} Else {
    ClickCount:=0
    Suffix := " Released"
}
MouseState := "Mouse " . SubStr(A_ThisHotkey, 3, -3) . Suffix
MouseTooltip()
return

MouseTooltip(){
GetKeyStates()
ShowKeys(KeyStates . MouseState)
SetTimer ClearMouseState,  % -IdleDelay
SetTimer TooltipOff, % -IdleDelay
}

ClearMouseState:
MouseState=
ClickCount=0
return
TooltipOff:
If LargeDisplay
    Gui Hide
Else
    Tooltip
return

GetKeyStates() {
KeyStates := ""
    . ( GetKeyState("LControl", "P") ? "LControl + " : "" )
    . ( GetKeyState("RControl", "P") ? "RControl + " : "" )
    . ( GetKeyState("LAlt", "P") ? "LAlt + " : "" )
    . ( GetKeyState("RAlt", "P") ? "RAlt + " : "" )
    . ( GetKeyState("LShift", "P") ? "LShift + " : "" )
    . ( GetKeyState("RShift", "P") ? "RShift + " : "" )
    . ( GetKeyState("LWin", "P") ? "LWin + " : "" )
    . ( GetKeyState("AppsKey", "P") ? "AppsKey + " : "" )
    . ( GetKeyState("F1", "P") ? "F1 + " : "" )
    . ( GetKeyState("F2", "P") ? "F2 + " : "" )
    . ( GetKeyState("F3", "P") ? "F3 + " : "" )
    . ( GetKeyState("F4", "P") ? "F4 + " : "" )
    . ( GetKeyState("F5", "P") ? "F5 + " : "" )
    . ( GetKeyState("F6", "P") ? "F6 + " : "" )
    . ( GetKeyState("F7", "P") ? "F7 + " : "" )
    . ( GetKeyState("F8", "P") ? "F8 + " : "" )
    . ( GetKeyState("F9", "P") ? "F9 + " : "" )
    . ( GetKeyState("F10", "P") ? "F10 + " : "" )
    . ( GetKeyState("F11", "P") ? "F11 + " : "" )
    . ( GetKeyState("F12", "P") ? "F12 + " : "" )
    . ( GetKeyState("Left", "P") ? "Left + " : "" )
    . ( GetKeyState("Right", "P") ? "Right + " : "" )
    . ( GetKeyState("Up", "P") ? "Up + " : "" )
    . ( GetKeyState("Down", "P") ? "Down + " : "" )
    . ( GetKeyState("Home", "P") ? "Home + " : "" )
    . ( GetKeyState("End", "P") ? "End + " : "" )x
    . ( GetKeyState("PgUp", "P") ? "PgUp + " : "" )
    . ( GetKeyState("PgDn", "P") ? "PgDn + " : "" )
    . ( GetKeyState("Del", "P") ? "Del + " : "" )
    . ( GetKeyState("Ins", "P") ? "Ins + " : "" )
    . ( GetKeyState("BS", "P") ? "BS + " : "" )
    . ( GetKeyState("Capslock", "P") ? "Capslock + " : "" )
    . ( GetKeyState("Numlock", "P") ? "Numlock + " : "" )
    . ( GetKeyState("PrintScreen", "P") ? "PrintScreen + " : "" )
    . ( GetKeyState("Pause", "P") ? "Pause + " : "" )
}

ShowKeys(text) {
If LargeDisplay
{
    Global blkOsdCtrlName, blkOsdCtrlName2, MonitorLeft, MonitorRight, MonitorBottom, MonitorTop, GUIx, GUIy, GUIh

    CoordMode Mouse, Screen
    MouseGetPos MouseX, MouseY

    If ((!GUIy) || (MouseX >= MonitorLeft && MouseX <= MonitorRight && MouseY >= GUIy && MouseY <= (GUIy+GUIh)) ) {
    If (MouseY < (MonitorTop + (MonitorBottom - MonitorTop) / 2) )
        GUIy := MonitorBottom - (MonitorBottom - MonitorTop) * 0.2
    Else
        GUIy := MonitorTop + (MonitorBottom - MonitorTop) * 0.2
    }

    GuiControl Text, blkOsdCtrlName, %text%
    GuiControl Text, blkOsdCtrlName2, %text%

    Gui, Show, x%GUIx% y%GUIy% NoActivate
} Else {
    Tooltip % text
}
}
LogicDaemon
la source
J'ai essayé de démarrer "DisplayPressedKeyOnScreen.exe" sur Win7 64 bits. Je reçois le message d'erreur Windows cannot access the specified device, path, or file. You may not have the appropriate permissions to access the item.Le fichier exe est-il autonome? Ou dois-je installer AutoHotkey au préalable?
Kai Noack
@EchtEinfachTV Je suis sûr que c'est autonome. En outre, je viens de télécharger et de le lancer avec succès sur Win 8.1 32 bits. Peut-on comparer MD5? Le mien est d788516439ed743b3553eb3ae7b9082c et la taille du fichier est de 332 288 octets.
LogicDaemon
Le fichier que j'ai téléchargé à partir de votre lien ci - dessus m'indique MD5: D788516439ED743B3553EB3AE7B9082C et une taille de fichier de 332 288. Ce devrait donc être exactement le même fichier. Il est également étrange qu'après le message d'erreur de Windows 7, l'analyseur de virus Panda Cloud soit apparu, déplaçant le fichier "malveillant" en quarantaine.
Kai Noack
@EchtEinfachTV alors apparemment, c'est un antivirus qui a refusé l'accès au fichier lorsque vous avez essayé de le lancer, c'est pourquoi vous avez reçu un message Windows indiquant que vous ne pouvez pas y accéder. Bien que je ne sache pas pourquoi il bloque, vous pouvez vérifier: il s'agit d'un binaire autohotkey standard joint à une source de script en texte brut (mais reformatée).
LogicDaemon
1
@Amina ty, je suppose que c'est un déplacement accidentel de dossiers Dropbox par moi. Va réparer mon post.
LogicDaemon
2

Vous pouvez utiliser le clavier à l'écran pour afficher les pressions sur les touches fournies avec Windows. Lorsque vous tapez sur votre clavier physique, l’un à l’écran met en surbrillance ladite touche.

Noix non capitalisée
la source
1
Merci, j'ai déjà essayé, mais la seule touche de modification qui est en surbrillance est la touche Shift.
richardtallent
Dans Windows 7, tapez "clavier" dans le champ de recherche du menu Démarrer, puis sélectionnez "Clavier
visuel
Ce n'est pas pour moi (gagner 10).
NounVerber
1

Le pointeur de présentation est la meilleure alternative à MousePosé pour Windows. Il fournit un effet de pointeur, un effet de clic de souris, des frappes au clavier et vous permet même de dessiner librement sur l'écran mais pas de le verrouiller. C'est vraiment un avantage du programme.

Garvey
la source
1
... actuellement 30 USD.
miroxlav
1

PointerFocus peut afficher vos frappes.

Dan
la source
3
actuellement 12.50 USD
miroxlav
Malheureusement, il ne peut pas personnaliser / ignorer certaines clés.
Basj
1

J'ai écrit une petite application Windows appelée QiPress . Il dispose de commandes permettant de modifier l'apparence, d'afficher ou d'ignorer certains groupes de clés, voire même d'ajouter du texte statique (votre propre nom ou le nom de votre société, par exemple). Le positionnement est possible en désactivant le clic et en faisant glisser la fenêtre contextuelle. Il y a d'autres fonctionnalités dont vous n'avez probablement pas besoin, mais qui couvrent principalement ce que vous voulez.

aalapshah
la source
3
actuellement 30 USD
miroxlav
Pour clarifier les versions: Version gratuite: Pour un usage personnel et non commercial. Certaines fonctionnalités avancées sont désactivées (par exemple, différents claviers de langue, plusieurs moniteurs, affichage du joystick, etc.). Aucune limite de temps. Version payante: Pour tous les usages. Toutes les fonctionnalités avancées activées. Aucune limite de temps.
aalapshah
0

Vous pouvez utiliser PassMark KeyboardTest (évaluation gratuite pendant 30 jours, puis achat de 24,00 USD).

entrez la description de l'image ici

FYI:

Franck Dernoncourt
la source