Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.91/68: Рейтинг темы: голосов - 68, средняя оценка - 4.91
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
1

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

28.04.2010, 19:08. Просмотров 12318. Ответов 29
Метки нет (Все метки)

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


мужики срочно отпишитесь!!!!! пожалуйста!!((((((((
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.04.2010, 19:08
Ответы с готовыми решениями:

Управление движением объекта с помощью стрелок клавиатуры
Нужна помощь в управлении объекта клавиатурой. Объект должен двигаться как на рисунке при нажатии...

Имитация мыши. Полное управление курсором. WinAPI
Требуется найти функции, которые используем мыщьх. Движение курсора, нажатие LB\RB, прокрутка...

Управление курсором мыши за счет веб камеры
Дорогие форумчане, не понимаю, как управлять курсором мыши с помощью веб-камеры. Много перечитал...

Управление элементом при помощи стрелок клавиатуры
Напишите такое приложение: при нажатии на клавишу Enter в центре формы появляется квадрат размера...

29
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
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;
}
1
быдлокодер
1718 / 905 / 106
Регистрация: 04.06.2008
Сообщений: 5,613
28.04.2010, 21:58 22
...Ещё и под ДОС...
Ну, добре.
Предлагаю ТС идти в ногу со временем и поставить IDE, распознающую SETCURSORPOS ().
0
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
28.04.2010, 22:05  [ТС] 23
я бы поставил. тольк у нас в универе препод !!!.....чисто тольк эту бороду поставил и не че новей ставить не хочет(
0
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
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;
}
0
1545 / 911 / 193
Регистрация: 26.03.2010
Сообщений: 3,105
28.04.2010, 22:16 25
Ребят, хотел узнать. Вот код, пост #5, как из него сделать .exe файл?
0
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
28.04.2010, 22:24 26
а вообще в папке с проектом обычно создается .ехе файл при запуске программы в компиляторе)
2
Вложения
Тип файла: rar Cyberforum.rar (7.6 Кб, 54 просмотров)
быдлокодер
1718 / 905 / 106
Регистрация: 04.06.2008
Сообщений: 5,613
28.04.2010, 22:25 27
Создайте файл *с или *сpp с таким содержанием, откройте в какой-нибудь среде (рекомендую DEV C++ 4.9.9.2), скомпилируете и получите работоспособный экзешник
0
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
28.04.2010, 22:31  [ТС] 28
спасибо=) выручил просто не представляешь как=)

Добавлено через 5 минут
Рассчетно-графические работы
ребят тут еще проблема возникла((((но эт прога другая((((((
0
Peace 2 all shining faces
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,283
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;
}
1
1 / 1 / 0
Регистрация: 27.04.2010
Сообщений: 15
29.04.2010, 00:14  [ТС] 30
Vorona, спасиб большое=)=)=)
не перевелись еще добрые люди
блин нереально выручил
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.04.2010, 00:14

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

Движение нарисованного объекта с помощью стрелок клавиатуры
Подскажите как нарисовать объект (Например Круг) и затем с помощью стрелок клавиатуры перемещать...

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

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

Как сделать управление кнопкой с мыши и клавиатуры
Я чайнег - начал изучать основы VB (VISUAL STUDO 2010) Вопрос такой - а как на одну кнопку &quot;ОК&quot; -...


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

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

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