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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.96
AlexSMG
0 / 0 / 0
Регистрация: 09.04.2010
Сообщений: 14
#1

Мышь в Borland C++ 3.11 for DOS - C++

20.04.2010, 13:10. Просмотров 3211. Ответов 2
Метки нет (Все метки)

Привет всем!
Тут возникла такая проблема, мне нужно подключить мышь в Си++.
Надо, чтоб по нажатию левой кнопки мыши вычислялись координаты курсора.
Не подскажите, как это можно реализовать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2010, 13:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Мышь в Borland C++ 3.11 for DOS (C++):

borland c++ 3.1 dos - C++
Где можно скачать borland c++ 3.1 dos с поддержкой русского языка!. Добавлено через 5 минут Можно прикрепить файл установочник или...

Borland C++ for DOS - C++
Здравствуйте, я начинаю изучать С++ в институте. Программы необходимо писать в Borland C++ for DOS. Я разобрался с основными функциями,...

BOrland c for dos Прокоментируйте код - C++
Просто кое что понятно а кое что нет)..Плиз)#include <conio.h> #include <stdio.h> #include <string.h> #include <stdlib.h> ...

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

Дана целочисленная матрица A(N, M). Borland С++ for dos - C++
1)Дана целочисленная матрица A(N, M). Вычислите сумму и произведение тех её элементов, которые при делении на два дают нечётное число. ...

подробное он-лайн руководство по Borland C++ 3.1. (for DOS) - C++
Подскажите, плз, подробное он-лайн руководство по Borland C++ 3.1. (for DOS).Можно англ. Меня интересует использование шаблонов классов....

2
Vorona
Peace 2 all shining faces
671 / 533 / 45
Регистрация: 05.03.2010
Сообщений: 1,283
20.04.2010, 13:55 #2
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
40
41
42
43
44
45
46
47
48
// показать/спрятать "мышь"
 void mouse(int m)
{
 int mode;
 if (m==0) mode=2;else mode=m;
 asm{
     mov ax,mode //задание номера функции
     int 33h     //вызов прерывания №33
    }
}
// определение координат  и состояния кнопок "мыши"
void mStatus()
{
 int mbut, mx, my;
 asm{
     mov ax,3h //задание номера функции
     int 33h   //вызов прерывания №33
     mov mx,cx // координата Х
     mov my,dx // координата У
     mov mbut,bx // байт состояния кнопок
    }
  x = mx;
  y = my;
  but = mbut;
}
//перемещение "мыши" в заданную точку Xm,Ym
void mousemove(int xm, int ym)
 {
  asm{
    mov ax, 4
    mov cx, xm
    mov dx, ym
    int 33h
    }
 }
//определение числа нажатий левой кнопки "мыши"
void count()
 {
  if (but==0) nb=0;
  if ((but==1) && (nb==0)) {nbut++;nb=1;}
 }
//определение нахождения "мыши" в заданной области
int mousecoord(int x1,int y1, int x2, int y2)
{
  mStatus();
  if (x>=x1 && x<=x2 && y>=y1 && y<=y2) return 1;
  else return 0;
}
просто нарисовать мышь:
в графическом режиме
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
#include <iostream.h>
#include <conio.h>
#include <graphics.h>
#include <stdlib.h>
 
void mouse(int m)
{
    int mode;
    if (m == 0)
        mode = 2;
    else mode = m;
    asm{
        mov ax, mode
        int 33h
    }
}
 
void main(){
    clrscr();
    int gdriver = DETECT, gmode, errorcode;
    initgraph(&gdriver, &gmode, "");
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        cout << "Graphics error: " << grapherrormsg(errorcode) << endl;
        cout << "Press any key to halt:";
        getch();
        exit(1);
    }
 
    mouse(1);
 
    getch();
    closegraph();
}

в консоли
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <conio.h>
 
void mouse(int m)
{
    int mode;
    if (m == 0)
        mode = 2;
    else mode = m;
    asm{
        mov ax, mode
        int 33h
    }
}
 
void main(){
    clrscr();
    mouse(1);
    getch();
}
2
AlexSMG
0 / 0 / 0
Регистрация: 09.04.2010
Сообщений: 14
21.04.2010, 00:28  [ТС] #3
Огромное спасибо! Вы мне очень помогли =)
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.04.2010, 00:28
Привет! Вот еще темы с ответами:

Какая версия Borland для MS-DOS 6.22? - C++
Подскажите, какая версия Борланда с/с++ ставится на чистый DOS? ставил Borland 3.1, при установке он требует указать папку Windows. При...

Утечка памяти в С++ (Borland C++ 3.1 под DOS) - C++
Добрый день! Прошу помощи! Есть старая программа, которую мне надо адаптировать под новое оборудование. Но при выполнении выдает странные...

BOrland c for dos Исправить ошибку! код есть! - C++
Прошу помощи!!!! Есть код.... Но проблема.....когда ввожу номер группы ( на разных студентов но один номер группы) то он выводит первого...

Помогите написать игру змейка на Borland C (DOS) - C++
Помогите создать саму змею и задать ей движение по стрелкам на клавиатре.


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

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

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