Bonjour, je suis googling cette question pendant un certain temps et je ne peux pas trouver de résultats sur la façon dont j'allais faire cela. J'ai actuellement un menu de sélection que l'utilisateur peut sélectionner une liste d'options à partir de ce qui commence à partir du haut, mais la fenêtre affiche les dernières options à chaque fois que je rafraîchis la liste. Tout ce que je veux faire, c'est pouvoir afficher la ligne avec l'option sélectionnée dans la fenêtre. P>
Toutes les idées seront appréciées. p>
5 Réponses :
Je pense que ce que vous voulez peut-être, c'est
System.Console.Clear()
Je ne pense pas que j'étais clair avec ma question, je suis clair avant que je rafraîchis le menu Je souhaite modifier la position de défilement physique de la console pour afficher l'option sélectionnée actuelle.
@bobthemac Oui, je pense que vous étiez clair avec cela, mais je ne suis au courant d'aucune option de console qui le font. Peut-être qu'il est temps que vous ayez mis à niveau vers une application Windows Forms, où vous avez un accès plus direct aux barres de défilement?
J'utiliserais des formulaires Windows mais on m'a dit qu'il doit être une demande de console
Console.SetCursorPosition(XCoordinate,YCoordinate); Should do the trick.
+1. Oh, j'aime cette idée. Bien que cela ne réponde pas non plus à la question, cela fournit un autre travail autour. Je soupçonne que l'op ne l'aimera pas non plus cependant :(
@BOBTHEMAC: L'essentiel est qu'il s'agit de la méthode que vous devez utiliser si vous souhaitez déplacer le curseur dans une position de défilement spécifique. S'il gâche votre menu, votre code d'écriture, vous devez probablement ré-écrire cette routine. Il n'y a pas beaucoup à ajouter, désolé.
Je ne veux pas déplacer le curseur que je veux faire défiler jusqu'à un point spécifique Devrais-je publier mon code de menu.
J'ai essayé cela un édité mon code pour la rendre en forme mais elle saute toujours au fond lorsque je change ma sélection.
Cela pourrait vous être utile: de MSDN : P> Utilisez la méthode SetCursorposition pour spécifier où l'écriture suivante
L'opération dans la fenêtre de la console doit commencer. Si le curseur spécifié
la position est en dehors de la zone actuellement visible dans la console
fenêtre, l'origine de la fenêtre change automatiquement pour faire le curseur
visible. p>
BlockQuote> Cette réponse Stackoverflow donne un exemple sur la façon de l'utiliser:
https://stackoverflow.com/a/3407570/53777 p> p>
Ceci devrait em> fonctionner pour vous Essayez de faire quelque chose comme ceci: p> pour voir , si c'est ce que vous cherchez. p> J'espère que cela aide. P> P>
C'est ce que j'ai utilisé à la fin et cela a fonctionné comme je le voulais.
Console.SetWindowPosition(0 , currentItem);
J'ai utilisé la console.Sewindowposition et je peux l'obtenir pour faire ce que je veux pour les quelques derniers mois, il s'arrête juste.
J'ai résolu le problème que j'ai utilisé console.Setwindowposition (0, CurrentItem); Et cela a parfaitement fonctionné, mais je n'aurais pas trouvé cela si ce n'était pas pour vous dire que vous avez dit à mon de régler la position du curseur grâce à toute l'aide.