Как найти подсказку в консольном приложении? - PullRequest
0 голосов
/ 04 апреля 2011

Есть ли способ разместить подсказку программно в консольном приложении? Я использую Visual Studio 2008.

Спасибо

Ответы [ 3 ]

2 голосов
/ 04 апреля 2011

Предполагая, что вы говорите о выходной позиции, вы можете контролировать ее на двух уровнях.

На самом высоком уровне вы можете использовать управляющих символов , таких как возврат каретки, перевод строки.и забой.Посмотрите ближайшую таблицу ASCII.

На более низком уровне вы можете использовать функции консоли Windows API.

Эти функции, в свою очередь, разделены на два уровня и в зависимости от того, что вы хотитеcontrol (например, ответ на Ctrl C), вам, возможно, придется углубиться до самого нижнего уровня.

Более портативной альтернативой является использование некоторой переносимой библиотеки терминалов, такой как ncurses.Приветствия & hth.,

2 голосов
/ 04 апреля 2011

Вы имеете в виду перемещение мерцающей штуки?Если это так, я думаю, что SetConsoleCursorPosition это то, что вы хотите.Справочная страница по функциям консоли http://msdn.microsoft.com/en-us/libr...73(VS.85).aspx

0 голосов
/ 04 апреля 2011

Найдено в .NET

#include <windows.h>
#include <stdio.h>

void Locate ( int row, int col )
{ if ( row < 0 || row > 24 ) return;
  if ( col < 0 || col > 79 ) return;
  COORD c = { (SHORT)col, (SHORT)row };
  SetConsoleCursorPosition ( GetStdHandle ( STD_OUTPUT_HANDLE ), c ); }

void main ( )
{ int row;
  int col;
  printf ( "Row (0-24): " ); scanf ( "%d", &row );
  printf ( "Col (0-79): " ); scanf ( "%d", &col );
  Locate ( row, col );
  printf ( "This text is starting at row %d, column %d\n", row, col ); }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...