5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-05 04:50:09 +08:00
wails/mkdocs-website/docs/cy/development/changes_events.md
2024-03-18 21:52:39 +11:00

2.9 KiB

Digwyddiadau

Yn v3, mae 3 math o ddigwyddiadau:

  • Digwyddiadau Cymhwysiad
  • Digwyddiadau Ffenestr
  • Digwyddiadau Cyfaddas

Digwyddiadau Cymhwysiad

Mae digwyddiadau cymhwysiad yn ddigwyddiadau a allbynir gan y cymhwysiad. Mae'r digwyddiadau hyn yn cynnwys digwyddiadau brodorol fel ApplicationDidFinishLaunching ar macOS.

Digwyddiadau Ffenestr

Mae digwyddiadau ffenestr yn ddigwyddiadau a allbynir gan ffenestr. Mae'r digwyddiadau hyn yn cynnwys digwyddiadau brodorol fel WindowDidBecomeMain ar macOS. Diffinnir digwyddiadau cyffredin hefyd, fel y maent yn gweithio ar draws platfformau, e.e. WindowClosing.

Digwyddiadau Cyfaddas

Mae'r digwyddiadau y mae'r defnyddiwr yn eu diffinio yn cael eu galw WailsEvents. Mae hyn er mwyn eu gwahaniaethu o'r gwrthrych Event a ddefnyddir i gyfathrebu gyda'r porwr. Mae WailsEvents bellach yn wrthrychau sy'n erynu holl fanylion digwyddiad. Mae hyn yn cynnwys enw'r digwyddiad, y data, a ffynhonnell y digwyddiad.

Mae'r data sy'n gysylltiedig â WailsEvent bellach yn un gwerth. Os oes angen mwy nag un gwerth, gellir defnyddio strwythur.

Galwadau digwyddiad a llofnod swyddogaeth Emit

Mae llofnodion y galwadau digwyddiad (fel y defnyddir gan On, Once & OnMultiple) wedi newid. Yn v2, naeth y swyddogaeth alwad dderbyn data dewisol. Yn v3, mae'r swyddogaeth alwad yn derbyn gwrthrych WailsEvent sy'n cynnwys yr holl ddata sy'n berthnasol i'r digwyddiad.

Yn yr un modd, mae'r swyddogaeth Emit wedi newid. Yn lle cymryd enw a data dewisol, mae'n cymryd un gwrthrych WailsEvent y bydd yn ei allbynnu.

Off a OffAll

Yn v2, byddai galwadau Off a OffAll yn tynnu digwyddiadau i ffwrdd yn JS ac yn Go. Oherwydd natur aml-ffenestr v3, mae hyn wedi newid fel bod y dulliau hyn ond yn berthnasol i'r cyd-destun y'u galwyd. Er enghraifft, os ydych yn galw Off mewn ffenestr, dim ond digwyddiadau ar gyfer y ffenestr honno y bydd yn eu tynnu. Os ydych yn defnyddio Off yn Go, dim ond digwyddiadau ar gyfer Go y bydd yn eu tynnu.

Bachau

Mae Bachau Digwyddiad yn nodwedd newydd yn v3. Maent yn caniatáu i chi fachlu i mewn i'r system ddigwyddiadau a chyflawni gweithredoedd pan fydd digwyddiadau penodol yn cael eu hallbynnu. Er enghraifft, gallwch fachlu i mewn i'r digwyddiad WindowClosing a chyflawni rhywfaint o lanhau cyn i'r ffenestr gau. Gellir cofrestru bachau ar lefel y cymhwysiad neu ar lefel y ffenestr gan ddefnyddio RegisterHook. Bydd bachau lefel cymhwysiad ar gyfer digwyddiadau cymhwysiad. Bydd bachau lefel ffenestr ond yn cael eu galw ar gyfer y ffenestr y'u cofrestrir.

Nodiadau datblygwr

Pan allbynwch ddigwyddiad yn Go, bydd yn dosbarthu'r digwyddiad i wrrandawyr Go lleol a hefyd i bob ffenestr yn y cymhwysiad. Pan allbynwch ddigwyddiad yn JS, mae'n nawr yn anfon y digwyddiad at y cymhwysiad. Caiff hwn ei brosesu fel petai wedi ei allbynnu yn Go, fodd bynnag bydd ID y anfonwr yn bod hwnnw o'r ffenestr.