Nekronomik Temat założony przez niniejszego użytkownika |
Allegro zawiesza się przez myszke. » 2012-07-04 20:16:19 Witam, mam problem z myszką w allegro.Po 2-3 minutach rzadko,nawet po paru sekundach allegro się zawiesza wraz z exploer.exe.Problemy te nie występują gdy nie gdy nie ma myszki.Kod do myszki wziąłem z kursu:
#include <allegro.h> #include <allegro.h>
int mx = 0, my = 0, mb = 0; void myszka() { if( mx != mouse_x || my != mouse_y || mb != mouse_b ) { mx = mouse_x; my = mouse_y; mb = mouse_b; } };
int main() { allegro_init(); install_keyboard(); set_color_depth( 32 ); set_gfx_mode( GFX_AUTODETECT_WINDOWED, 800, 600, 0, 0 ); install_mouse(); show_mouse( screen ); unscare_mouse(); BITMAP * bufor = NULL; bufor = create_bitmap( 800, 600 ); while( !key[ KEY_ESC ] ) { clear_to_color( bufor, makecol( 100, 100, 100 ) ); myszka(); textprintf_ex( bufor, font, 20, 20, makecol( 200, 200, 200 ), - 1, "Myszka x = %d, y = %d, klawisz = %d !", mx, my, mb ); blit( bufor, screen, 0, 0, 0, 0, 800, 600 ); clear_keybuf(); } destroy_bitmap( bufor ); allegro_exit(); return 0; } END_OF_MAIN();
|
|
DejaVu |
» 2012-07-04 20:54:13 Nie należy używać funkcji do pokazywania myszy jeżeli używasz buforowanie w Allegro. Gdybyś użył googli to byś znalazł n-tematów opisujących ten problem na naszym forum. |
|
Nekronomik Temat założony przez niniejszego użytkownika |
» 2012-07-04 21:09:44 Więc mam zrozumieć że kod w kursie jest zły ?. Jeśli tak to bardzo bym prosił o poprawny kod,zważywszy że Allegro jest dla mnie nową biblioteką. |
|
DejaVu |
» 2012-07-04 21:51:05 |
|
Nekronomik Temat założony przez niniejszego użytkownika |
» 2012-07-04 22:46:58 Szukałem w Google odpowiedzi na mój problem,ale pod innym hasłem. Co do strony,to mi pomogła ale w połowie,gdyż wychodząc z programu pojawia mi się komunikat Projekt1.exe has encountered a problem and needs to close. we are sorry for the inconvenience.A wokół myszki pojawia mi się kwadracik,kreski itp.Z samą myszka nic się nie dzieje. |
|
DejaVu |
» 2012-07-05 00:33:07 Po prostu nie czytałeś dokumentacji allegro oraz funkcji, których używasz. Problemy o których piszesz również były opisane na forum. |
|
Gabes |
» 2012-07-05 01:10:16 Wpisz zamiast clear_keybuf();
show_mouse( bufor ); blit( bufor, screen, 0, 0, 0, 0, 800, 600 ); show_mouse( screen ); mały programik http://www.wrzuc.to/kPptV088q.wt A i jeszcze Allegro4 to przeżytek. |
|
Nekronomik Temat założony przez niniejszego użytkownika |
» 2012-07-05 02:02:42 Teraz działa wszystko dobrze,program nie zawiesza się,nic wokół myszki się nie pokazuje.Za to pętla stanowczo zwolniła. |
|
« 1 » 2 |