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

управление курсором мыши с помощью стрелок клавиатуры - C++

Восстановить пароль Регистрация
 
 
Рейтинг: Рейтинг темы: голосов - 64, средняя оценка - 4.67
sJIaBa
 Аватар для sJIaBa
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
28.04.2010, 19:08     управление курсором мыши с помощью стрелок клавиатуры #1
программу в которой происходит управление курсором мыши с помощью стрелок клавиатуры
при этом курсор мыши соответствует стрелке на нажатой клавише.


мужики срочно отпишитесь!!!!! пожалуйста!!((((((((
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.04.2010, 19:08     управление курсором мыши с помощью стрелок клавиатуры
Посмотрите здесь:

C++ Драйвер клавиатуры и мыши.
C++ Захват текста под курсором мыши
Разработка меню, управление курсором в меню C++
C++ Объект поворачивается вслед за курсором мыши
Hook клавиатуры и мыши C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
28.04.2010, 21:55     управление курсором мыши с помощью стрелок клавиатуры #21
это старый Борланд под Дос, все распознает только в другом виде
вот мышь в графическом режиме:
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
49
50
51
52
53
54
55
56
57
58
#include <conio.h>
#include <graphics.h>
//показать / спрятать мышь
void mouse(int m)
{
        int mode;
        if (m==0) mode=2;else mode=m;
        asm{
            mov ax,mode
            int 33h
    }
}
//изменить положение мыши
void mousemove(int xm, int ym)
{
        asm{
            mov ax, 4
            mov cx, xm
            mov dx, ym
            int 33h
    }
}
 
int main()
{
    clrscr();
 
    int step = 10;
    char c = 0;
//подключение графики, автоопределение(DETECT) графического драйвера
    int gdriver = DETECT, gmode, errorcode;
 
    initgraph(&gdriver, &gmode, "");
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        cprintf("Graphics error: %s\n", grapherrormsg(errorcode));
        cprintf("Press any key to halt:");
        getch();
        return 1;
    }//проверка на ошибки
 
    int x = getmaxx()/2, y = getmaxy()/2;
//разместить курсор  в центре экрана
    mousemove(x, y);
    mouse(1);
    while(c != 27){
        c = getch();
        switch(c){
            case 75: if(x>1)mousemove(x-=step, y); break;
            case 77: if(x<639)mousemove(x+=step, y); break;
            case 72: if(y>1)mousemove(x, y-=step); break;
            case 80: if(y<479)mousemove(x, y+=step); break;
        }
    }
    closegraph();
        return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
28.04.2010, 21:58     управление курсором мыши с помощью стрелок клавиатуры #22
...Ещё и под ДОС...
Ну, добре.
Предлагаю ТС идти в ногу со временем и поставить IDE, распознающую SETCURSORPOS ().
sJIaBa
 Аватар для sJIaBa
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
28.04.2010, 22:05  [ТС]     управление курсором мыши с помощью стрелок клавиатуры #23
я бы поставил. тольк у нас в универе препод !!!.....чисто тольк эту бороду поставил и не че новей ставить не хочет(
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
28.04.2010, 22:08     управление курсором мыши с помощью стрелок клавиатуры #24
вот на всякий случай остальные ф-ции() для работы с мышью:
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;
}
neske
1419 / 786 / 55
Регистрация: 26.03.2010
Сообщений: 2,694
28.04.2010, 22:16     управление курсором мыши с помощью стрелок клавиатуры #25
Ребят, хотел узнать. Вот код, пост #5, как из него сделать .exe файл?
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
28.04.2010, 22:24     управление курсором мыши с помощью стрелок клавиатуры #26
а вообще в папке с проектом обычно создается .ехе файл при запуске программы в компиляторе)
Вложения
Тип файла: rar Cyberforum.rar (7.6 Кб, 53 просмотров)
kravam
быдлокодер
 Аватар для kravam
1512 / 872 / 44
Регистрация: 04.06.2008
Сообщений: 5,271
28.04.2010, 22:25     управление курсором мыши с помощью стрелок клавиатуры #27
Создайте файл *с или *сpp с таким содержанием, откройте в какой-нибудь среде (рекомендую DEV C++ 4.9.9.2), скомпилируете и получите работоспособный экзешник
sJIaBa
 Аватар для sJIaBa
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
28.04.2010, 22:31  [ТС]     управление курсором мыши с помощью стрелок клавиатуры #28
спасибо=) выручил просто не представляешь как=)

Добавлено через 5 минут
Рассчетно-графические работы
ребят тут еще проблема возникла((((но эт прога другая((((((
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
29.04.2010, 00:10     управление курсором мыши с помощью стрелок клавиатуры #29
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include <conio.h>
#include <graphics.h>
#include <dos.h>
 
void mouse(int m)
{
    int mode;
    if (m==0) mode=2;else mode=m;
    asm{
        mov ax,mode
        int 33h
    }
}
 
void mousemove(int xm, int ym)
{
    asm{
        mov ax, 4
        mov cx, xm
        mov dx, ym
        int 33h
    }
}
 
void chastota(int ch, int i){
    if(i==1){
        mouse(0);
        delay(ch);
        mouse(1);
        delay(ch);
    }
    else {
        mouse(1);
        delay(ch);
        mouse(1);
    }
}
 
int main()
{
    clrscr();
 
    int ch;
    cprintf("Vvedite 4astoty miganiia: ");
    cscanf("%d", &ch);
 
    int step = 10;
    char c = 0;
    int gdriver = DETECT, gmode, errorcode;
 
    initgraph(&gdriver, &gmode, "");
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        cprintf("Graphics error: %s\n", grapherrormsg(errorcode));
        cprintf("Press any key to halt:");
        getch();
        return 1;
    }
    int x = getmaxx()/2, y = getmaxy()/2;
 
    mousemove(x, y);
    mouse(1);
    while(c != 27){
 
        while(!kbhit())
            chastota(ch, 1);
        if(kbhit()){
            c = getch();
            chastota(ch, 0);
        }
 
        switch(c){
            case 75: if(x>1) mousemove(x-=step, y); break;
            case 77: if(x<639) mousemove(x+=step, y); break;
            case 72: if(y>1) mousemove(x, y-=step); break;
            case 80: if(y<479) mousemove(x, y+=step); break;
        }
    }
    closegraph();
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.04.2010, 00:14     управление курсором мыши с помощью стрелок клавиатуры
Еще ссылки по теме:

Программа, управляющая курсором мыши C++
C++ Реализовать круговые движения курсором мыши
C++ Управление курсором в консоли

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

Или воспользуйтесь поиском по форуму:
sJIaBa
 Аватар для sJIaBa
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
29.04.2010, 00:14  [ТС]     управление курсором мыши с помощью стрелок клавиатуры #30
Vorona, спасиб большое=)=)=)
не перевелись еще добрые люди
блин нереально выручил
Yandex
Объявления
29.04.2010, 00:14     управление курсором мыши с помощью стрелок клавиатуры
Ответ Создать тему
Опции темы

Текущее время: 01:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru