Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
isobo531
42 / 42 / 11
Регистрация: 11.11.2014
Сообщений: 322
#1

Управление курсором в консоли - C++

30.06.2015, 22:50. Просмотров 1276. Ответов 11
Метки нет (Все метки)

Всем привет. Интересует вопрос: можно ли управлять курсором в консоли, то есть управлять положением вывода или ввода информации, с помощью ассемблера?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.06.2015, 22:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Управление курсором в консоли (C++):

Как управлять мигающим курсором в консоли? - C++
Здравствуйте. Какой оператор нудно использовать что бы вывести константу в определенной точке (например в 3 ряду 2 колонке, когда курсор...

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

Управление кнопками в консоли - C++
int a; int b = 1; for (int i = 0; true; i++) { a = _getch(); if (a == 224) b = 2; cout << b <<...

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

Управление началом ввывода в консоли - C++
Ребят, подскажите, что нужно использовать, чтобы управлять курсором вывода в окне консоли. Например, мне нужно выводить числа в несколько...

Управление текстом и цветом к консоли - C++
Добрый вечер! Интересуют 2 вопроса: 1) Как в консоли оформить шапку (большие буквы вверху)? 2) Как изменить цвет фона и текста? ...

11
rikimaru2013
C++ Game Dev
2440 / 1133 / 240
Регистрация: 30.11.2013
Сообщений: 3,690
30.06.2015, 22:58 #2
А причем тут раздел С++?
0
isobo531
42 / 42 / 11
Регистрация: 11.11.2014
Сообщений: 322
30.06.2015, 23:00  [ТС] #3
rikimaru2013, Я имею в виду, что при написании кода С++ использовать сегмент кода ассемблера - управление курсором
0
MansMI
1293 / 1071 / 299
Регистрация: 08.01.2012
Сообщений: 4,080
30.06.2015, 23:23 #4
C++
1
2
3
4
5
6
7
#include <windows.h>
...................
    COORD cr;
 
    cr.X=10;
    cr.Y=10;
    SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),cr);
2
isobo531
42 / 42 / 11
Регистрация: 11.11.2014
Сообщений: 322
30.06.2015, 23:25  [ТС] #5
MansMI, А если использовать сегмент кода ассемблера. Как его оформить в коде С++?
0
MansMI
1293 / 1071 / 299
Регистрация: 08.01.2012
Сообщений: 4,080
30.06.2015, 23:28 #6
какой С++? Borland C++ и int 10h?
0
isobo531
42 / 42 / 11
Регистрация: 11.11.2014
Сообщений: 322
30.06.2015, 23:31  [ТС] #7
MansMI, Visual C++ 2010. Да, именно с int 10h.
Вот такой сегмент, к примеру:
Assembler
1
2
3
4
5
    mov ah, 2
    mov BH, 00
    mov DH, 03
    mov DL, 03
    int 10h
0
MansMI
1293 / 1071 / 299
Регистрация: 08.01.2012
Сообщений: 4,080
30.06.2015, 23:34 #8
............нет слов, Windows != DOS
0
isobo531
42 / 42 / 11
Регистрация: 11.11.2014
Сообщений: 322
30.06.2015, 23:35  [ТС] #9
MansMI, Хм. Понял. Просто видел код, в который вставили часть ассемблера..
0
MansMI
1293 / 1071 / 299
Регистрация: 08.01.2012
Сообщений: 4,080
01.07.2015, 06:23 #10
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
void main()
{
    COORD cr;
    HANDLE hnd;
 
    //cr.X=20;
    //cr.Y=10;
    _asm
    {
        mov eax,-11//STD_OUTPUT_HANDLE
        mov esi,esp
        push eax
        call dword ptr [GetStdHandle]
        mov esp,esi
        mov dword ptr [hnd],eax
        mov ax,20 
        mov word ptr [cr],ax 
        mov ax,10 
        mov word ptr [cr+2],ax
        mov esi,esp
        push dword ptr [cr]
        push dword ptr [hnd]
        call dword ptr [SetConsoleCursorPosition]
        mov esp,esi
    }
    //hnd=GetStdHandle(STD_OUTPUT_HANDLE);
    //SetConsoleCursorPosition(hnd,cr);
    system("pause");
}
1
koleso1999
0 / 0 / 0
Регистрация: 04.06.2014
Сообщений: 7
06.07.2015, 11:19 #11
Цитата Сообщение от MansMI Посмотреть сообщение
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
void main()
{
    COORD cr;
    HANDLE hnd;
 
    //cr.X=20;
    //cr.Y=10;
    _asm
    {
        mov eax,-11//STD_OUTPUT_HANDLE
        mov esi,esp
        push eax
        call dword ptr [GetStdHandle]
        mov esp,esi
        mov dword ptr [hnd],eax
        mov ax,20 
        mov word ptr [cr],ax 
        mov ax,10 
        mov word ptr [cr+2],ax
        mov esi,esp
        push dword ptr [cr]
        push dword ptr [hnd]
        call dword ptr [SetConsoleCursorPosition]
        mov esp,esi
    }
    //hnd=GetStdHandle(STD_OUTPUT_HANDLE);
    //SetConsoleCursorPosition(hnd,cr);
    system("pause");
}
а што нужно подлючить из заголовочных файлов для роботоспособности дамого кода, а то выдает ошыбки
0
MansMI
1293 / 1071 / 299
Регистрация: 08.01.2012
Сообщений: 4,080
06.07.2015, 11:27 #12
#include <windows.h>
1
06.07.2015, 11:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.07.2015, 11:27
Привет! Вот еще темы с ответами:

Меню в консоли, управление стрелками - C++
Подскажите пожалуйста, как сделать меню типа: пункт 1 пункт 2 и так далее Чтобы между пунктами можно было перемещаться курсором и...

Разработка меню, управление курсором в меню - C++
Задание: Написать программу для опроса нажатых клавиш, определения вида нажатой клавиши и передачи управления на соответствующую метку. При...

Реализовать алгоритм работы планировщика. Управление виртуальной памятью. Управление файловой системой - C++
Разработка программы менеджера памяти. Свопинг. Сегментная схема организации памяти. Управление виртуальной памятью. Глобальное и локальное...

Клавиши F1-F12 в консоли, и работа с мышкой в консоли - C++
Я искал на сайте, но не нашел упоминания о том как обрабатывать и или узнавать где находится курсор мышки (и еще мне надо бы узнать нажатие...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

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