| m_zap Temat założony przez niniejszego użytkownika | Proste Menu problem z kliknięciem » 2011-03-29 21:33:04 Piszę sobie proste menu najeżdżam na element i zmienia swoj kolor ale jak juz na niego klikam to nic się nie dzieje co może być nie tak?
 while( !key[ KEY_ESC ] ) {myszka();
 
 blit( bufor, screen, 0, 0, 0, 0, 640, 800 );
 if(( mx >= graj_x ) &&( mx <= graj_x + graj->w ) &&( my >= graj_y ) &&( my <= graj_y + graj->h ) ) {
 
 clear_to_color( bufor, makecol( 128, 128, 128 ) );
 masked_blit( grajOnH, bufor, 0, 0, graj_x, graj_y, graj->w, graj->h );
 blit( bufor, screen, 0, 0, 0, 0, 640, 800 );
 }
 else if(( mx >= graj_x ) &&( mx <= graj_x + graj->w ) &&( my >= graj_y ) &&( my <= graj_y + graj->h ) &&( mb == 1 ) ) {
 clear_to_color( bufor, makecol( 128, 128, 128 ) );
 masked_blit( grajOnC, bufor, 0, 0, graj_x, graj_y, graj->w, graj->h );
 blit( bufor, screen, 0, 0, 0, 0, 640, 800 );
 }
 else {
 clear_to_color( bufor, makecol( 128, 128, 128 ) );
 masked_blit( graj, bufor, 0, 0, graj_x, graj_y, graj->w, graj->h );
 }
 
 
 }
 readkey();
 
 destroy_bitmap( bufor );
 
 return 0;
 }
 
 | 
|  | 
| malan | » 2011-03-29 22:16:39 Bo kliknięcie trwa parę milisekund, a Ty masz źle zorganizowany kod. Poczytaj o podwójnym buforowaniu i zerknij jaka powinna być poprawna kolejność funkcji (mam nadzieję, że rozumiesz o czym mówię) w głównej pętli. | 
|  | 
| m_zap Temat założony przez niniejszego użytkownika | » 2011-03-29 22:23:08 Ale jak wrzucam ten warunek z kliknięcia do głownego if'a to działa normalnie po kliknięciu. wygląda jakby było coś źle z tym else if | 
|  | 
| malan | » 2011-03-29 22:48:31 No, bo masz  else  po pierwszym  if . Zrób z tego dwa, osobne warunki. | 
|  | 
| « 1 » |