web-dev-qa-db-fra.com

Infobulles avec délai infini?

Je pense à définir le délai d'expiration de toutes mes info-bulles dans une application WinForms à l'infini (ou à une valeur extrêmement élevée). La motivation est que c'est ennuyeux pour l'utilisateur si l'infobulle disparaît pendant que je le lis, sans fournir aucune valeur supplémentaire pour autant que je sache.

Normalement, je ne demanderais pas quelque chose comme ça sur StackOverflow, mais l'écrasante majorité de tous les logiciels définit des délais d'attente sur les info-bulles, donc je me demande si peut-être une considération importante me manque? Ou s'agit-il simplement d'une vieille convention à laquelle personne ne réfléchit davantage?

Si vous détestez le délai infini par opposition à un court délai, veuillez expliquer pourquoi.

(Si vous pensez simplement que les info-bulles sont une mauvaise idée, c'est une considération distincte; cette question concerne spécifiquement le délai infini.)

22
RomanSt

Microsoft Tooltips and Infotips Guidelines suggère explicitement que vous devez utiliser la valeur maximale possible:

Pour les info-bulles, désactivez le délai de suppression de la pointe. Développeurs: Étant donné que vous ne pouvez pas techniquement désactiver le délai de suppression, définissez-le sur sa plus grande valeur.

Ils le font dans l'Explorateur Windows pour les info-bulles d'images (c'est-à-dire qu'ils disparaissent après 32 secondes):

enter image description here

Aussi l'attribut title pour <acronym> les balises en HTML ont des délais d'expiration infinis - elles s'étendent certainement au-delà des 32 pour les info-bulles Windows.

Séparer les cheveux - mais vous créeriez en fait infotips plutôt que des info-bulles:

A info-bulle est une petite fenêtre contextuelle qui étiquette le contrôle non étiqueté pointé, comme les contrôles de barre d'outils non étiquetés ou les boutons de commande.

Parce que les info-bulles se sont avérées si utiles, il existe un contrôle associé appelé infotips, qui fournit un texte plus descriptif que ce qui est possible avec les info-bulles.

Un infotip est une petite fenêtre contextuelle qui décrit de manière concise l'objet pointé, comme les descriptions des commandes de la barre d'outils, les icônes, les graphiques, les liens, les objets de l'Explorateur Windows®, les éléments du menu Démarrer et boutons de la barre des tâches.

6
icc97

J'irais avec le temps indéfini. Ces très courts comme lorsque vous survolez la valeur Connect Using de votre carte réseau pour voir votre adresse MAC expirer toujours avant que j'en ai fini et cela me rend fou. Cela dit, j'éviterais autant que possible l'utilisation des info-bulles. Surtout si son utilisé pour afficher des informations supplémentaires comme l'exemple d'adresse MAC. Utilisez-les pour expliquer ce que les choses signifient pour le nouvel utilisateur, et non pour afficher de nouvelles données.

3
jamone

Si vous optez pour un délai infini, 1) assurez-vous de fournir beaucoup d'espace inactif, 2) assurez-vous qu'ils expirent correctement surMouseOut. Parce que la seule chose plus ennuyeuse qu'une info-bulle que vous ne pouvez pas lire car elle expire trop rapidement est une info-bulle qui masque une information importante et ne veut pas disparaître.

Je pense que l'abus le plus flagrant des info-bulles non expirantes a été le premier gestionnaire de bureau Enlightenment. CHAQUE élément de bureau fournissait des info-bulles non expirantes, et le bureau lui-même le faisait également, produisant une infobulle d'un demi-écran haut et large contenant une aide complète sur tout ce que vous pouviez faire avec le bureau, sauf comment désactiver les info-bulles.

3
SF.

Notez qu'en utilisant l'API Win32 ToolTip (ce que fait la classe .NET ToolTip), vous ne pouvez pas définir un délai infini sur Win32 (max est ~ 32 secondes). En fait, MSDN indique que vous ne pouvez pas définir un délai de plus de 5 secondes , mais curieusement, 30 secondes fonctionnent bien pour moi. Si, pour une raison quelconque, cela ne fonctionne pas pour vous, il existe solutions . Je pense que 32 secondes devraient être suffisantes pour la plupart des infobulles, sinon vous devrez rouler les vôtres (voir ici et ici pour des idées). Enfin, vous devriez probablement résoudre le problème réapparaissant . Pour plus d'informations, consultez les articles CodeProject ici et ici .

Bonne chance !

3
Ohad Schneider

Je pense que les info-bulles infinies bénéficieront grandement aux info-bulles qui sont extrêmement longues. Jetez un œil à une info-bulle typique dans Handbrake (logiciel de transcodage vidéo).

tooltip

En raison des limitations techniques signalées par ohadsc, l'info-bulle disparaît en 5 secondes. C'est ennuyant. Vous ne pouvez pas saisir tout cela en 5 secondes, surtout ce truc ringard. Néanmoins, ces longues info-bulles m'ont aidé à passer à une utilisation avancée de Handbrake. C'est beaucoup mieux que d'avoir à basculer entre un document d'aide séparé.

Je ne vois aucune raison pour que les info-bulles disparaissent après X secondes, quelle que soit la verbosité de l'info-bulle. Vous ne pouvez pas vous attendre à ce que tout le monde termine la lecture en X secondes. S'ils voulaient que l'infobulle disparaisse, ils déplaceront leur souris de quelques pixels vers le haut - c'est facile.

2
JoJo

Je déteste les info-bulles pour commencer - je les déteste encore plus puis elles disparaissent pendant que je les lis.

Je dirais optez pour le délai infini tant qu'il ne gêne pas.

Mais dans l'ensemble, je pense que les info-bulles sont une mauvaise idée et elles viennent d'être traînées "parce que c'est comme ça que nous l'avons toujours fait". Le problème est de trouver une alternative agréable et intuitive qui résout le problème de fournir une aide concise, à la demande et ciblée sur les fonctionnalités.

1
Jonathon

Il n'y a aucun avantage à la temporisation. Bien que les info-bulles aient été utilisées sporadiquement avant Windows 95, Windows 95 les a surutilisées et les a systématiquement expirées partout. Je trouve très probable que tout le monde a juste copié la convention sans y penser correctement.

1
Timwi

Que peuvent contenir vos info-bulles? S'ils n'obtiennent rien, le délai d'infini est correct. Là encore, si vous avez ce genre d'espace à laisser vide, vous devriez peut-être utiliser autre chose que des info-bulles, comme des étiquettes plus longues et plus descriptives.

Le délai d'expiration a pour but que l'infobulle (que l'utilisateur ne voulait pas nécessairement) écarte quelque chose que l'utilisateur doit voir. Considérez le cas d'un utilisateur survolant un contrôle de barre d'outils essayant de décider si la commande est appropriée pour un élément sélectionné dans un document, puis une info-bulle apparaît cachant une partie clé de l'élément sélectionné qu'ils étudiaient afin de décider. Le délai d'attente permet à ce problème de se résoudre lui-même. C'est également une raison pour laquelle les info-bulles devraient avoir un délai.

Si le texte de l'infobulle est trop long pour être lu avec un court délai, vous êtes en quelque sorte coincé entre un rocher et un endroit dur. Si vous laissez le délai d'attente court, l'info-bulle peut disparaître pendant que les utilisateurs le lisent encore et ils devront déplacer le pointeur et réacquérir le hotspot (et attendre le délai), ce qui est ennuyeux. Vous pouvez augmenter le délai d'expiration, mais cela signifie augmenter la durée d'occlusion d'autres éléments (et parce que le texte est long, il est plus probable qu'il occlue quelque chose d'intérêt). Vous forcez les utilisateurs à déplacer le pointeur pour voir le contenu, puis éventuellement à le reculer pour choisir une commande, ce qui est également ennuyeux. La première est probablement plus gênante que la seconde, mais, selon la densité de vos fenêtres, la seconde est probablement plus fréquente que la première - les info-bulles ne devraient être utilisées que pour des informations supplémentaires non essentielles, ce qui, par définition, signifie que les utilisateurs ont rarement besoin pour les lire.

Si vous avez un texte long, vous ne devriez peut-être pas utiliser les info-bulles, mais quelles sont les alternatives? Je ne peux pas recommander d'utiliser la barre d'état, car les utilisateurs remarquent rarement des choses dans la barre d'état, car elle est loin de l'endroit où ils sont susceptibles de chercher. Vous pouvez placer un espace vide juste sous les contrôles qui nécessitent des infobulles et afficher dynamiquement du texte à temps plein sans délai ni délai, mais vous ne voulez pas toujours utiliser autant de biens immobiliers pour quelque chose dont les utilisateurs ont rarement besoin.

Peut-être que la solution est des info-bulles transparentes avec un délai infini - ou l'info-bulle devient transparente après l'expiration pour fournir une lisibilité optimale au début. Cool si la transparence améliorait pour une fois la convivialité.

1
Michael Zuschlag

Tout ce dont vous avez besoin est de fournir un meilleur moyen de vous débarrasser de l'infobulle.

Idéalement, une petite "croix" dans le coin supérieur droit de l'infobulle indique que cela peut être fermé. (Je ne sais pas à quel point cela serait facile à ajouter avec Win32 tooltip API).

De plus, assurez-vous que les autres tentatives pour s'en débarrasser fonctionnent ou du moins ne me font pas perdre de travail. Les utilisateurs pourraient essayer de

  • cliquez quelque part en dehors de l'info-bulle (généralement sûr ..)
  • cliquez sur l'info-bulle (ne "cliquez pas")
  • appuyez sur ESC (cela pourrait s'avérer délicat ou déroutant)
  • autres choses?

Alternatives:

  1. rendre le délai d'attente dépendant de la longueur du texte

  2. donne à l'infobulle de l'élément actuellement ciblé son propre espace, où elle ne couvre rien. @JoJo publie un excellent exemple où les info-bulles sont mauvais: beaucoup de texte et couvrant une zone aléatoire de l'écran.

1
peterchen

Vous devrez probablement lancer votre propre info-bulle. Cela dit, j'ai vu des gens utiliser une zone de type barre d'état pour afficher des conseils sur ce que font les boutons. Image-Line le fait dans FL Studio, et les astuces étaient vraiment utiles, ne changent pas si je ne déplace pas la souris, et ne recouvre rien ni n'encombre.

Cela pourrait être quelque chose à considérer, surtout si vous avez la peine de créer vos propres info-bulles.

1
Owen Johnson