30.3. Квиз - догађаји и анимације¶
Питање 1.¶
Следећа недовршена функција за обраду догађаја треба да провери да ли је кликнуто мишем на правоугаону слику димензија w_sl x h_sl, са горњим левим теменом у тачки (x_sl, y_sl).
def obradi_dogadjaj(dogadjaj):
global __________ # А
if dogadjaj.type == __________: # B
x_mis, y_mis = __________ # C
if (x_sl < x_mis and x_mis < x_sl + w_sl and
__________): # D
kliknuto_na_sliku = True
Делови који недостају функцији су набројани у наставку. Упиши редне бројеве делова који недостају функцији у поретку у ком их треба убацити на места A, B, C, D редом (дакле, прво редни број дела који треба убацити на место A, итд.)
pg.MOUSEBUTTONDOWN
y_sl < y_mis and y_mis < y_sl + h_sl
kliknuto_na_sliku
dogadjaj.pos
Одговор:
Питање 2.¶
- Да променимо слику када корисник кликне на њу.
- Нетачно
- Да престанемо да приказујемо слику када корисник кликне на њу.
- Нетачно
- Да померамо мишем слику по прозору.
- Тачно
- Да преврнемо слику наопако када корисник кликне на њу.
- Нетачно
Q-112: Нека je sl слика коју програм у сваком фрејму приказује на позицији (x_sl, y_sl), а w_sl и h_sl нека су редом ширина и висина те слике.
def nov_frejm():
prozor.fill(pg.Color("skyblue"))
prozor.blit(sl, (x_sl, x_sl))
Шта нам омогућава следећа функција за обраду догађаја?
def obradi_dogadjaj(dogadjaj):
global x_sl, y_sl, w_sl, h_sl, pr
if dogadjaj.type == pg.MOUSEBUTTONDOWN:
x_mis, y_mis = dogadjaj.pos
if (x_sl < x_mis and x_mis < x_sl + w_sl and
y_sl < y_mis and y_mis < y_sl + h_sl):
pr = True
elif dogadjaj.type == pg.MOUSEBUTTONUP:
pr = False
elif dogadjaj.type == pg.MOUSEMOTION:
if pr:
x_sl = x_mis - w_sl // 2
y_sl = y_mis - h_sl // 2
Изабери тачан одговор.
Питање 3.¶
- pygame.QUIT
- Тачно
- pygame.EXIT
- Нетачно
- pygame.CLOSE
- Нетачно
Q-113: Догађај затварања прозора је у PyGame библиотеци означен са:
Изабери тачан одговор.
Питање 4.¶
if (dogadjaj.type == pygame.KEYDOWN) and (dogadjaj.key == pygame.K_LEFT):
if (dogadjaj.type == pygame.KEYDOWN) or (dogadjaj.key == pygame.LEFT):
if (dogadjaj.type == pygame.K_LEFT):
- 1
- Тачно
- 2
- Нетачно
- 3
- Нетачно
Q-114: Којим од понуђених линија кода се врши провера да ли је притиснут тастер стрелице лево?
Изабери тачан одговор.
Питање 5.¶
- pg.time.set_timer
- Тачно
- pg.USEREVENT.timer_set
- Нетачно
- pg.clock.set_time
- Нетачно
Q-115: Помоћу које функције укључујемо тајмер?
Изабери тачан одговор.