С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/47: Рейтинг темы: голосов - 47, средняя оценка - 4.77
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
1

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

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

Author24 — интернет-сервис помощи студентам
Всем привет. Интересует вопрос: можно ли управлять курсором в консоли, то есть управлять положением вывода или ввода информации, с помощью ассемблера?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Блог
30.06.2015, 22:50
Ответы с готовыми решениями:

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

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

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

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

11
2549 / 1208 / 358
Регистрация: 30.11.2013
Сообщений: 3,826
30.06.2015, 22:58 2
А причем тут раздел С++?
0
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
30.06.2015, 23:00  [ТС] 3
rikimaru2013, Я имею в виду, что при написании кода С++ использовать сегмент кода ассемблера - управление курсором
0
Заблокирован
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
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
30.06.2015, 23:25  [ТС] 5
MansMI, А если использовать сегмент кода ассемблера. Как его оформить в коде С++?
0
Заблокирован
30.06.2015, 23:28 6
какой С++? Borland C++ и int 10h?
0
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
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
Заблокирован
30.06.2015, 23:34 8
............нет слов, Windows != DOS
0
50 / 49 / 29
Регистрация: 11.11.2014
Сообщений: 332
30.06.2015, 23:35  [ТС] 9
MansMI, Хм. Понял. Просто видел код, в который вставили часть ассемблера..
0
Заблокирован
01.07.2015, 06:23 10
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение

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
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
Заблокирован
06.07.2015, 11:27 12
#include <windows.h>
1
06.07.2015, 11:27
cpp_developer
Эксперт
20123 / 5690 / 417
Регистрация: 09.04.2010
Сообщений: 12,546
Блог
06.07.2015, 11:27
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru