Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
zheleznyak_oleg
12 / 12 / 1
Регистрация: 03.01.2011
Сообщений: 77
#1

Курсор - C++

20.07.2011, 20:14. Просмотров 645. Ответов 3
Метки нет (Все метки)

Как получить координаты курсора в консоли
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.07.2011, 20:14     Курсор
Посмотрите здесь:

Курсор - C++
Как получить символ в определённой позиции курсора в консоле? Допустим по среди экрана выведено HELLO WORLD! и надо получить допустим...

Курсор - C++
Подскажите как отключить курсор в консоли, чтобы не было видно

Курсор и Изображени - C++
Пожалуйста помогите очень сложно.

LOCATE курсор - C++
Здравствуйте. Подскажите, есть ли в С функция устанавливающая курсор в консольном приложении в заданную позицию?(аналогичная к LOCATE в...

невидимый курсор - C++
Помогите реализовать невидимый курсор в консоли (он постоянно мигает и мешает). В интернете порылся, но так ничего нормально, работающего...

мигающий курсор - C++
В CODEBLOCS в окне набора текста программы появился мигающий курсор "_", а раньше был курсор "|". И редактирование текста поменялось....

Курсор мыши - C++
Привет народ, помогите пожалуйста... У меня тут задача написать игру уголки(на шашечной доске) я для начало решил сделать его в...

Не получается перевести курсор - C++
Всем привет!Хочу отблагодарить всех,кто помог мне со строками.Спасибо. Но так как я школьник,то у меня появилась еще одна...

нужно убрать курсор - C++
это ↓ не помогает убрать курсор, а в моей ситуации он никак не вписывается. помогите CONSOLE_CURSOR_INFO cci; cci.bVisible = 0; ...

Какой курсор отображается? - C++
Здравствуйте, мне нужно узнать какой курсор отображается в системе в данный момент? CBuilder CURSORINFO pc; pc.cbSize =...

курсор в переменной FILE - C++
Вот так окрываю файл: FILE *INPUT_FILE = fopen(inputFile,"rt"); //...читаю разное при помощи getc(), gets(), и др. А вопрос простой,...

Кнопки или курсор - C++
У меня есть программа, меню которой состоит из нескольких пунктов. Выбор этих пунктов осуществляется вводом соответствущего номера пункта...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kastaneda
Форумчанин
Эксперт С++
4479 / 2841 / 227
Регистрация: 12.12.2009
Сообщений: 7,224
Записей в блоге: 1
Завершенные тесты: 1
20.07.2011, 20:22     Курсор #2
GetConsoleScreenBufferInfo()
xAtom
914 / 739 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
20.07.2011, 21:28     Курсор #3
Вот набросал примерчик, рисования в консоли, здесь и получение координат и так далее.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <windows.h>
 
 
int main(void) {
 
   HANDLE  _out = GetStdHandle(STD_OUTPUT_HANDLE);
   HANDLE  _in   = GetStdHandle(STD_INPUT_HANDLE);
   DWORD   dr;
   TCHAR    spos[32];
 
   CONSOLE_SCREEN_BUFFER_INFO  info;
   ZeroMemory(&info, sizeof(CONSOLE_SCREEN_BUFFER_INFO));
   GetConsoleScreenBufferInfo(_out, &info);
 
   INPUT_RECORD  rec;
   while(1) {
             ZeroMemory(&rec, sizeof(INPUT_RECORD));
             ReadConsoleInput(_in, &rec, sizeof(INPUT_RECORD), &dr);
             FlushConsoleInputBuffer(_in);
             if(rec.EventType == MOUSE_EVENT) {
                 COORD pos = {
                        rec.Event.MouseEvent.dwMousePosition.X,
                        rec.Event.MouseEvent.dwMousePosition.Y
                 };
                 // если нажата левая кнопка мыши рисуем по координатам
                 if(rec.Event.MouseEvent.dwButtonState == FROM_LEFT_1ST_BUTTON_PRESSED) {
 
                       WriteConsoleOutputCharacter(_out, " ", 1U, pos, &dr);
                       WORD w = 224;
                       WriteConsoleOutputAttribute(_out, &w,  1U, pos, &dr);
                       wsprintf(spos, "X=%d, Y=%d", pos.X, pos.Y);
                       SetConsoleTitle(spos);  // выводим в заголовок  окна позицию курсора
 
                 }
             }
    }
 
   return 0;
}
Kastaneda
Форумчанин
Эксперт С++
4479 / 2841 / 227
Регистрация: 12.12.2009
Сообщений: 7,224
Записей в блоге: 1
Завершенные тесты: 1
20.07.2011, 21:47     Курсор #4
Хм..., закоментировал строку:
C++
1
FlushConsoleInputBuffer(_in);
запускаю в MSVS кнопкой F5 (отладка) - программа не работает (т.е. работает, только ни чего не происходит). Запускаю комбинацией кнопок ctrl+F5 (запуск без отладки) - все работает.
Чего-то я не понимаю...
Yandex
Объявления
20.07.2011, 21:47     Курсор
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru