Како имплементирати слушалац акција у Јави



Овај чланак ће вам пружити детаљно и свеобухватно знање о Слушаоцу акција на Јави са примерима за боље разумевање.

Када корисник изврши одређену радњу мора бити у стању да се ефикасно носи са тим. Слушаоци акције на Јави врло добро дођу у таквим ситуацијама. У овом чланку ћемо разговарати о следећим тачкама:

јавни низ тостринг ()

Увод у Слушалац акције

Као програмер, ваша је дужност да дефинишете шта слушалац радње може учинити за рад корисника. На пример, размотримо једноставан сценарио када корисник одабере одређену ставку са траке менија или притисне тастер ентер у пољу за текст да би прешао у нови ред. Једном када су такве корисничке функције готове, порука „изведена радња“ шаље се свим одговарајућим преслушачима акција дефинисаних у релевантној компоненти.





Испод сликовито описује како се пише слушалац акције:

Action-Listener-List



Овде је пресудни и саставни део објекат који може да имплементира интерфејс слушалаца акција. Програм овај објект мора препознати као преслушач акције на дугмету који није ништа друго до извор догађаја.

Дакле, користећи методу аддАцтионЛистенер, када корисник кликне на дугме, активира акцијски догађај. Ово позива методу ацтионПерформед преслушавача акције. Имајте на уму да је то једини метод у интерфејсу АцтионЛистенер. Појединачни аргумент методе је објект АцтионЕвент, који пружа информације о догађају и његовом извору

Час акционих догађаја

Методе Опис
Стринг гетАцтионЦомманд ()

Приказује низ повезан са овом радњом. Већина објеката који могу активирати догађаје акције подржавају методу која се назива сетАцтионЦомманд, која вам омогућава да поставите овај низ.



инт гетМодифиерс ()

Враћа цео број који је корисник притискао током акције током догађаја. Неке константе дефинисане АцтионЕвент-ом попут СХИФТ_МАСК, ЦТРЛ_МАСК, МЕТА_МАСК и АЛТ_МАСК користе се за одређивање притиснутих тастера. На пример, ако корисник одабере ставку менија, тада израз није нула

Објекат гетСоурце ()

(у јава.утил.ЕвентОбјецт)

Враћа објекат који је покренуо догађај.

Имплементација преслушавача акција у Јави

пакет цом.јавапоинтерс.јавасе импорт јава.авт.БордерЛаиоут импорт јава.авт.евент.АцтионЕвент импорт јава.авт.евент.АцтионЛистенер импорт јавак.свинг.ЈБуттон импорт јавак.свинг.ЈФраме импорт јавак.свинг.ЈТектАреа имплементација јавне класе АцтионЛистенерТест АцтионЛистенер {ЈБуттон буттон ЈФраме фраме ЈТектАреа тектАреа публиц АцтионЛистенерТест () {буттон = нев ЈБуттон ('Цлицк Ме') фраме = нев ЈФраме ('АцтионЛистенер Тест') тектАреа = нев ЈТектАреа (5, 40) буттон.аддАцтионЛистенер (тхис) тектАреа. сетЛинеВрап (труе) фраме.сетЛаиоут (нев БордерЛаиоут ()) фраме.адд (тектАреа, БордерЛаиоут.НОРТХ) фраме.адд (буттон, БордерЛаиоут.СОУТХ) фраме.пацк () фраме.сетДефаултЦлосеОператион (ЈФраме.ЕКСИТ_ОН_ЦЛОСЕ) фраме.сетВис. тачно)} @Оверриде публиц воид ацтионПерформед (АцтионЕвент е) {тектАреа.сетТект (тектАреа.гетТект (). цонцат ('Кликнули сте дугме'))} публиц статиц воид маин (Стринг аргс []) {АцтионЛистенерТест тест = нев АцтионЛистенерТест ()}}

У горњем коду, преслушач акције мора бити имплементиран у класу пре него што му можете приступити. Дакле, обавезно додајте кључну реч имплементс и преслушач.

буттон.аддАцтионЛистенер (ово)

То значи да ће дугме компоненте бити укључено у компоненте које се прате за акцијски догађај. Обавезно је додати компоненту у преслушач акције, да бисте могли додавати кодове када корисник кликне на ту одређену компоненту. Компоненте које се не додају са преслушавачем акције неће моћи да се надгледају.

Погледајмо сада још један једноставан пример слушаоца радњи у Јави и како то функционише.

Пример 2:

Овде постоје 3 једноставна објекта дугмета Јава где су названи црвена, зелена и плава. У зависности од притиснутог дугмета промене боје позадине екрана.

Дијаграми у наставку приказују одговарајући излаз кода који се налази на крају овог документа. Приказана је само једна инсталација како екран постаје плав. Остале боје попут црвене и зелене могу се видети применом овог кода.

Објекат дугмета „рб“ повезан је са АцтионЛистенер. „Овај“ параметар представља АцтионЛистенер. Ако повезивање није завршено, програм ће приказати 3 тастера, али без руковања догађајима.

гетАцтионЦомманд () метода класе АцтионЕвент баца назад ознаку одговарајућег дугмета на које је корисник кликнуо као низ. стр.

импорт јава.авт. * импорт јава.авт.евент. * јавна класа БуттонДемо проширује Фраме имплементира АцтионЛистенер {Буттон рб, гб, бб // три референтне променљиве Буттон публиц БуттонДемо () // конструктор за дефинисање својстава дугмета { ФловЛаиоут фл = нев ФловЛаиоут () // поставите распоред у оквир сетЛаиоут (фл) рб = нев Буттон ('Ред') // претворите променљиве у објекте гб = нев Буттон ('Греен') бб = нев Буттон ('Блуе') рб.аддАцтионЛистенер (тхис) // повежи Јава дугмад са АцтионЛистенер гб.аддАцтионЛистенер (тхис) бб.аддАцтионЛистенер (тхис) адд (рб) // додај свако Јава дугме у оквир адд (гб) адд (бб) сетТитле ('Буттон у акцији ') сетСизе (300, 350) // димензије оквира, (ширина к висина) сетВисибле (труе) // дефинисање оквира видљиво на монитору, подразумевано је сетВисибле (фалсе)} // замени само апстрактну методу јавног воид интерфејса АцтионЛистенер ацтионПерформед (АцтионЕвент е) {Стринг стр = е.гетАцтионЦомманд () // за идентификацију дугмета кликнутог Систем.оут.принтлн ('Кликнули сте' + стр + 'дугме') // иф (стр.екуалс ('Ред')) {сетБацкгроунд (Цолор.ред)} елсе иф (стр.екуалс ('Греен')) {сетБацкгроунд (Цолор.греен)} елсе иф (стр.екуалс ('Блуе') ) {сетБацкгроунд (Цолор.блуе)}} јавна статичка воид маин (Стринг аргс []) {нев БуттонДемо () // анонимни објекат БуттонДемо за позивање конструктора}}

Овим смо дошли до краја овог чланка о Слушаоцу акција у Јави. Надам се да сте разумели Ацтион Листенер у Јави.

Погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250 000 задовољних ученика раширених широм света. Едурекин курс за обуку и сертификацију Јава Ј2ЕЕ и СОА дизајниран је за студенте и професионалце који желе да буду Јава програмер. Курс је дизајниран да вам пружи почетну предност у Јава програмирању и обучи вас како за основне тако и за напредне Јава концепте, заједно са разним Јава оквирима попут Хибернате & Спринг.

Имате питање за нас? Молимо вас да га спомињете у одељку за коментаре овог блога „Слушалац акција на Јави“ и јавићемо вам се што је пре могуће.