Ĺadny brzuch
Mam problem bo nie mam pojęcia jak obsługuje się myszkę w Dev-C++ tylko nie w aplikacjach okienkowych ale w zwykłych konsolówkach będę niezmiernie wdzięczny za każdą pomoc. :) Chodzi mi o podstawy jak odczytać położenie myszki, współżędne punktu w którym nastąpiło kliknięcie prawym i lewym pryciskiem gryzonia. Za pomoc z góry dziękuję.
Mam problem bo nie mam pojęcia jak obsługuje się myszkę w Dev-C++ tylko nie w aplikacjach okienkowych ale w zwykłych konsolówkach będę niezmiernie wdzięczny za każdą pomoc. :) Chodzi mi o podstawy jak odczytać położenie myszki, współżędne punktu w którym nastąpiło kliknięcie prawym i lewym pryciskiem gryzonia. Za pomoc z góry dziękuję.
Oczywiście asm ;]. Nie martw się to jest akurat b. proste ;].
Umiem to zrobić pod Tp bo ma wbudowany kompilator asm-a, ale pod Cpp nie próbowałem(jednak z którejś z ksiązek pamietam że asm{}) ;]. No-do rzeczy.
Pokazanie kursora:
mov ax, 0001h int 33h
Proste prawda? ;]
Ukrycie kursora:
mov ax, 0002h int 33h
No i pobranie statusu myszy:
Załóżmy że mamy 5 zmiennych opisujących:
- czy wcisnięto klawisz lewy(bool);
- czy wcisnięto klawisz środkowy(bool);
- czy wcisnięto klawisz prawy(bool);
- pozycję myszy x(int);
- pozycję myszy y(int);
- i 3 zmienne pomocnicze w których po użyciu maski bitowej odczytamy stan prziycisków;
No i:
mov word ptr temp, bx;temp to ta zmienna pomocnicza mov temp_poz_x, cx; ta zmienna pomznicza dla wspórzędnej x mov temp_poz_y, dx; ta zmienna pomocnicza dla współrzędnej y //przypisanie poz_x = temp_poz_x; poz_y = temp_poz_y; // sprawdzenie stanu przycisków if((temp & 0x01) != 0) lewy /*lewy przycisk myszy*/ = true else lewy = false; if((temp & 0x02) != 0) prawy /*zgadnij;p */ = true else prawy = false; if((temp & 0x04) != 0)srodkowy /* ekhem... */ = true else srodkowy = false;
No. I tak to będzie musisz się dokładnie dowiedziec jak kompilowac wstawki asemblerowe w DevC++(nie mówię w cpp bo kazdy kompilator ma inaczej ;]);
...
:)
//edit: Upss...nie te operatory, ale już wszystko w porządku ;) ;P
Użytkownik arcktos edytował ten post 26 grudzień 2005, 18:00
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Mam problem bo nie mam pojęcia jak obsługuje się myszkę w Dev-C++ tylko nie w aplikacjach okienkowych ale w zwykłych konsolówkach będę niezmiernie wdzięczny za każdą pomoc. :) Chodzi mi o podstawy jak odczytać położenie myszki, współżędne punktu w którym nastąpiło kliknięcie prawym i lewym pryciskiem gryzonia. Za pomoc z góry dziękuję.

Oczywiście asm ;]. Nie martw się to jest akurat b. proste ;].
Umiem to zrobić pod Tp bo ma wbudowany kompilator asm-a, ale pod Cpp nie próbowałem(jednak z którejś z ksiązek pamietam że asm{}) ;]. No-do rzeczy.
Pokazanie kursora:
mov ax, 0001h int 33h
Proste prawda? ;]
Ukrycie kursora:
mov ax, 0002h int 33h
No i pobranie statusu myszy:
Załóżmy że mamy 5 zmiennych opisujących:
- czy wcisnięto klawisz lewy(bool);
- czy wcisnięto klawisz środkowy(bool);
- czy wcisnięto klawisz prawy(bool);
- pozycję myszy x(int);
- pozycję myszy y(int);
- i 3 zmienne pomocnicze w których po użyciu maski bitowej odczytamy stan prziycisków;
No i:
mov word ptr temp, bx;temp to ta zmienna pomocnicza mov temp_poz_x, cx; ta zmienna pomznicza dla wspórzędnej x mov temp_poz_y, dx; ta zmienna pomocnicza dla współrzędnej y //przypisanie poz_x = temp_poz_x; poz_y = temp_poz_y; // sprawdzenie stanu przycisków if((temp & 0x01) != 0) lewy /*lewy przycisk myszy*/ = true else lewy = false; if((temp & 0x02) != 0) prawy /*zgadnij;p */ = true else prawy = false; if((temp & 0x04) != 0)srodkowy /* ekhem... */ = true else srodkowy = false;
No. I tak to będzie musisz się dokładnie dowiedziec jak kompilowac wstawki asemblerowe w DevC++(nie mówię w cpp bo kazdy kompilator ma inaczej ;]);
...
:)
//edit: Upss...nie te operatory, ale już wszystko w porządku ;) ;P
Użytkownik arcktos edytował ten post 26 grudzień 2005, 18:00