Classe InkOverlay
Représente un objet utile pour les scénarios d’annotation dans lesquels les utilisateurs ne sont pas concernés par la reconnaissance sur l’entrée manuscrite, mais s’intéressent plutôt à la taille, à la forme, à la couleur et à la position de l’encre.
La création du contrôle InkOverlay derrière un contrôle transparent (par exemple, un GroupBox avec la propriété WS_EX_TRANSPARENT définie) empêche InkOverlay de collecter l’encre.
InkOverlay a les types de membres suivants :
Événements
La classe InkOverlay contient ces événements.
Événement | Description |
---|---|
CursorButtonDown | Se produit lorsque inkOverlay détecte un bouton de curseur qui est vers le bas. |
CursorButtonUp | Se produit lorsque inkOverlay détecte un bouton de curseur qui est en place. |
CursorDown | Se produit lorsque l’extrémité du curseur contacte la surface de la tablette de numérisation. |
CursorInRange | Se produit lorsqu’un curseur entre dans la plage de détection physique (proximité) du contexte de la tablette. |
CursorOutOfRange | Se produit lorsque le curseur quitte la plage de détection physique (proximité) du contexte de la tablette. |
Doubleclick | Se produit lorsque l’objet InkOverlay fait l’objet d’un double-clic. |
Mouvement | Se produit lorsqu’un mouvement spécifique à l’application est reconnu. |
Mousedown | Se produit lorsque le pointeur de la souris se trouve sur l’objet InkOverlay et qu’un bouton de la souris est enfoncé. |
Mousemove | Se produit lorsque le pointeur de la souris est déplacé sur l’objet InkOverlay . |
Mouseup | Se produit lorsque le pointeur de la souris se trouve sur l’objet InkOverlay et qu’un bouton de la souris est relâché. |
MouseWheel | Se produit lorsque la roulette de la souris se déplace alors que l’objet InkOverlay a le focus. |
NewInAirPackets | Se produit lorsqu’un paquet en air est visible, ce qui se produit lorsqu’un utilisateur déplace un stylet près de la tablette et que le curseur se trouve dans la fenêtre de l’objet InkOverlay ou que l’utilisateur déplace une souris dans la fenêtre associée de l’objet InkOverlay . |
NewPackets | Se produit lorsque l’objet InkOverlay reçoit des paquets. |
Peint | Se produit lorsque l’objet InkOverlay a terminé de se redessiner lui-même. |
Peinture | Se produit avant que l’objet InkOverlay ne se redessine lui-même. |
SelectionChanged | Se produit lorsque la sélection de l’entrée manuscrite dans le contrôle a changé, par exemple par le biais de modifications de l’interface utilisateur, de procédures couper-coller ou de la propriété Selection . |
SelectionChanging | Se produit lorsque la sélection de l’entrée manuscrite dans le contrôle est sur le point de changer, par exemple par le biais de modifications de l’interface utilisateur, de procédures couper-coller ou de la propriété Selection . |
SelectionMoved | Se produit lorsque la position de la sélection actuelle a changé, par exemple par le biais de modifications de l’interface utilisateur, de procédures couper-coller ou de la propriété Selection . |
SelectionMoving | Se produit lorsque la position de la sélection actuelle est sur le point de changer, par exemple par le biais de modifications de l’interface utilisateur, de procédures couper-coller ou de la propriété Selection . |
SelectionResized | Se produit lorsque la taille de la sélection actuelle a changé, par exemple par le biais de modifications de l’interface utilisateur, de procédures de couper-coller ou de la propriété Selection . |
SelectionResizing | Se produit lorsque la taille de la sélection actuelle est sur le point de changer, par exemple par le biais de modifications de l’interface utilisateur, de procédures couper-coller ou de la propriété Selection . |
Trait | Se produit lorsque l’utilisateur a fini de dessiner un nouveau trait sur n’importe quelle tablette. |
StrokesDeleted | Se produit après la suppression des traits de la propriété Ink . |
StrokesDeleting | Se produit avant la suppression des traits de la propriété Ink . |
SystemGesture | Se produit lorsqu’un mouvement système est reconnu. |
TabletAdded | Se produit lorsqu’un IInkTablet est ajouté au système. |
TabletRemoved | Se produit lorsqu’une tablette est supprimée du système. |
Interfaces
La classe InkOverlay définit ces interfaces.
Interface | Description |
---|---|
IInkOverlay | Cet objet implémente l’interface COM IInkOverlay . |
Méthodes
La classe InkOverlay a ces méthodes.
Méthode | Description |
---|---|
Dessin | Définit un rectangle dans lequel redessiner l’entrée manuscrite dans l’objet InkOverlay . |
GetEventInterest | Retourne l’état actuel d’un événement d’objet InkOverlay particulier, c’est-à-dire si l’événement est écouté ou utilisé. |
GetGestureStatus | Retourne si l’objet InkOverlay s’intéresse à un mouvement particulier. |
GetWindowInputRectangle | Récupère le rectangle de fenêtre, en pixels, dans lequel l’entrée manuscrite est dessinée. |
HitTestSelection | Détermine la partie de la sélection qui a été atteinte lors d’un test de positionnement. |
SetAllTabletsMode | Ce mode permet à l’objet InkOverlay de collecter des entrées manuscrites à partir de n’importe quelle tablette attachée au Tablet PC. |
SetEventInterest | Définit si un événement spécifique doit être écouté ou utilisé. |
SetGestureStatus | Définit l’intérêt de l’objet InkOverlay dans un mouvement connu. |
SetSingleTabletIntegratedMode | Ce mode permet à l’objet InkOverlay de collecter des entrées manuscrites à partir d’une seule tablette. L’entrée manuscrite d’autres tablettes est ignorée par l’objet InkOverlay . |
SetWindowInputRectangle | Définit le rectangle de fenêtre, en pixels, à utiliser pour mapper l’entrée manuscrite dessinée à la fenêtre. |
Propriétés
La classe InkOverlay a ces propriétés.
Propriété | Type d’accès | Description |
---|---|---|
AttachMode |
Lecture/écriture |
Obtient ou définit la valeur qui spécifie si l’objet InkOverlay est attaché derrière ou devant la fenêtre connue. |
Redessinage automatique |
Lecture/écriture |
Obtient ou définit une valeur qui spécifie si inkOverlay repeint l’encre lorsque la fenêtre est invalidée. |
CollectingInk |
Lecture seule |
Obtient une valeur qui spécifie si l’encre est en cours de dessin sur un objet InkOverlay . |
CollectionMode |
Lecture/écriture |
Obtient ou définit le mode de collection qui détermine si l’entrée manuscrite, les mouvements ou les deux sont reconnus au fur et à mesure que l’utilisateur écrit. |
Curseurs |
Lecture seule |
Obtient la collection Cursors qui est disponible pour une utilisation dans la région d’entrée manuscrite. |
DefaultDrawingAttributes |
Lecture/écriture |
Obtient ou définit l’objet InkDrawingAttributes par défaut, qui spécifie les attributs de dessin utilisés lors du dessin et de l’affichage de l’encre. |
DesiredPacketDescription |
Lecture/écriture |
Obtient ou définit l’intérêt pour les aspects du paquet associé à l’encre dessinée sur l’objet InkOverlay . |
DynamicRendering |
Lecture/écriture |
Obtient ou définit une valeur qui indique si l’encre est rendue au fur et à mesure qu’elle est dessinée. |
EditingMode |
Lecture/écriture |
Obtient ou définit une valeur qui indique si InkOverlay est en mode encre, en mode suppression ou en mode sélection/édition. |
activé |
Lecture/écriture |
Obtient ou définit une valeur qui spécifie si l’objet InkOverlay collecte l’entrée du stylet. |
EraserMode |
Lecture/écriture |
Obtient ou définit une valeur qui indique si l’entrée manuscrite est effacée par trait ou par point. |
EraserWidth |
Lecture/écriture |
Obtient ou définit une valeur qui spécifie la largeur de l’embout du stylet de gomme. |
Poignée |
Lecture/écriture |
Obtient ou définit le handle de la fenêtre à laquelle l’objet InkOverlay est attaché. |
Entrée manuscrite |
Lecture/écriture |
Obtient ou définit l’objet InkDisp associé à l’objet InkOverlay . |
MarginX |
Lecture/écriture |
Obtient ou définit les marges le long de l’axe X, en pixels. |
Marge |
Lecture/écriture |
Obtient ou définit les marges le long de l’axe y, en pixels. |
MouseIcon |
Lecture/écriture |
Obtient ou définit l’icône de souris personnalisée actuelle. |
MousePointer |
Lecture/écriture |
Obtient ou définit une valeur qui indique le type de pointeur de souris qui apparaît lorsque la souris se trouve sur une partie particulière de l’objet. |
Renderer |
Lecture/écriture |
Obtient ou définit l’objet InkRenderer utilisé pour dessiner de l’encre. |
Sélection |
Lecture/écriture |
Obtient ou définit la collection InkStrokes actuellement sélectionnée à l’intérieur du contrôle InkOverlay . |
SupportHighContrastInk |
Lecture/écriture |
Obtient ou définit une valeur qui spécifie si l’entrée manuscrite est rendue sous forme d’une seule couleur lorsque le système est en mode Contraste élevé. |
SupportHighContrastSelectionUI |
Lecture/écriture |
Obtient ou définit une valeur qui spécifie si toute l’interface utilisateur de sélection est dessinée avec un contraste élevé lorsque le système est en mode Contraste élevé. |
Tablette |
Lecture seule |
Obtient le périphérique de tablette que l’objet InkOverlay utilise actuellement pour collecter l’entrée. |
Notes d’implémentation MFC
Si vous avez attaché l’objet InkOverlay à un objet CView, relâchez l’objet InkOverlay en réponse au message WM_DESTROY comme illustré dans l’exemple suivant :
BOOL CRecognitionAlternatesSampleCppView::OnWndMsg(UINT msg, WPARAM wp, PARAM lp, LRESULT *pLR)
{
if(WM_DESTROY == msg)
m_spInkOverlay.Release();
return CView::OnWndMsg(msg, wp, lp, pLR);
}
Notes
Cet objet peut être instancié en appelant la méthode CoCreateInstance en C++.
L’objet InkOverlay est bien adapté pour la prise de notes et le gribouillage de base. L’utilisation principale de cet objet est d’afficher l’entrée manuscrite sous forme d’encre.
En général, l’interface utilisateur au moment de l’exécution de cet objet est une fenêtre transparente avec une entrée manuscrite opaque.
Les événements MouseDown, MouseMove, MouseUp et MouseWheel retournent les coordonnées x et les coordonnées y en pixels, et non les unités HIMETRIC associées à l’espace d’encre. En effet, ces événements remplacent les événements de souris des applications qui ne connaissent pas le stylet et ces applications ne comprennent que les pixels.
Attention
Si vous définissez la propriété AttachMode de l’objet InkOverlay sur InFront, créez l’objet InkOverlay dans le thread dans lequel le formulaire s’exécute. Votre application peut cesser de répondre si l’objet InkOverlay est créé dans un autre thread et que sa propriété AttachMode est définie sur InFront.
Notes
L’objet InkOverlay ne peut pas être libéré en toute sécurité sur un thread autre que l’interface utilisateur.
Pour améliorer les performances de votre application, éliminez votre objet InkOverlay lorsqu’il n’est plus nécessaire.
Si vous avez attaché l’objet InkOverlay à un objet CView, relâchez l’objet InkOverlay en réponse au message WM_DESTROY comme illustré dans l’exemple suivant :
BOOL CRecognitionAlternatesSampleCppView::OnWndMsg(UINT msg, WPARAM wp, PARAM lp, LRESULT *pLR)
{
if(WM_DESTROY == msg)
m_spInkOverlay.Release();
return CView::OnWndMsg(msg, wp, lp, pLR);
}
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows XP Édition Tablet PC [applications de bureau uniquement] |
Serveur minimal pris en charge |
Aucun pris en charge |
En-tête |
|
Bibliothèque |
|