JavaFX kasutajaliidese arendamiseks

Drag and Drop JavaFX-is – samm-sammuline juhend algajatele

Kõik õpetuse videod JavaFX kasutajaliidese arendamiseks

Kas oled kunagi mõelnud, kuidas Drag ja Drop graafilises liideses teostatakse? See kontseptsioon on levinud mitte ainult kaasaegsetes rakendustes, vaid on ka kasutajakogemuse jaoks äärmiselt oluline. Käesolevas juhendis näitan, kuidas implementida JavaFX-is Drag ja Drop, luues kaks ruutu, mida sa saad liigutada. See on sammsammuline juhend, et sa saaksid kõiki vajalikke samme hõlpsalt jälgida.

Olulisemad järeldused

  • Drag ja Drop võimaldab kasutajatel objekte hõlpsasti liigutada.
  • Drag ja Drop rakendamine JavaFX-is on lihtne tänu sündmuste käitlejatele ja lambda väljenditele.
  • Kollisioonide tuvastamine on hädavajalik, et kindlaks teha, kas objekt on paigutatud kindlasse piirkonda.

Sammsammuline juhend

1. Projekti seadistus

Alustuseks loo oma arenduskeskkonnas uus JavaFX projekt. Veendu, et kõik vajalikud raamatukogud on integreeritud. Alustame rakenduse põhi seadistamisest, luues peamise klassi.

JavaFX-is Drag ja Drop – Samm-sammuline juhend algajatele

2. Loo kasutajaliides

Meie näite jaoks loome kaks ruutu: väikese, mida me tahame liigutada, ja suure, mis on sihtmärk. Selleks on kood järgmine:

Rectangle recToMove = new Rectangle(50, 50, 50, 50); // väike ruut
Rectangle recTarget = new Rectangle(150, 150, 100, 100); // suur ruut

Ruutude loomisel määratled sa nende asukoha ja suuruse.

JavaFX'is lohistamine ja kukutamine – samm-sammuline juhend algajatele

3. Määra positsioon ja stseen

Seejärel vajad muutujaid, et salvestada oma objektide positsioon. Määratle stseeni X- ja Y-koordinaadid. Nendest kasutatakse hiljem liikumise jälgimiseks Drag-and-Drop protsessi ajal.

double mainX, mainY; 

4. Lisa sündmuste käitlejad

Järgmine samm on sündmuste käitlejate lisamine, mis võimaldavad Drag-and-Drop funktsionaalsust. Alustame hiire nupu vajutamise käitlejast.

recToMove.setOnMousePressed(event -> { mainX = event.getSceneX(); mainY = event.getSceneY();
});

Siin salvestad sa praeguse hiire positsiooni, kui hiire nuppu vajutatakse.

5. Liigutamise käitleja rakendamine

Liigutamise faasis kasutame teist sündmuste käitlejat, mis võimaldab sul ruutu liigutada, kui hoiad hiire nuppu all.

Siin värskendad sa ruutu positsiooni, tuginedes praegusele hiire liikumisele.

6. Hiire nuppu vabastamine

Hiire nuppu vabastamise arvestamiseks lisa täiendav käitleja. See muudab ruudu värvi ja kontrollib, kas see on paigutatud teatud sihtasendisse.

recToMove.setOnMouseReleased(event -> { // Taasta värv recToMove.setFill(Color.BLACK); checkBounce(recToMove);
});

7. Kollisioonide tuvastamine

Et kontrollida, kas liigutatud ruut on sihtruudus, implementeeri meetod nimega checkBounce.

Siin tuvastad, kas kaks ruutu kattuvad ja muudavad sihtruudu värvi vastavalt.

JavaFX-is Drag ja Drop – samm-sammuline juhend algajatele

8. Objektide lisamine stseenile

Lõpuks lisad loodud ruudud oma stseeni ja seadistad stseeni lavale.

Kokkuvõte – Drag ja Drop JavaFX-is

Käesoleva juhendi abil oled õppinud, kuidas JavaFX-is rakendada lihtsat Drag-and-Drop süsteemi. Oled omandanud kukkumisjärelevalve alused teadmised, samuti hiire sündmuste käitlemise. Drag ja Drop funktsionaalsused on rakenduste kasutajasõbralikkuse seisukohalt äärmiselt olulised.

Korduma kippuvad küsimused

Kuidas rakendada Drag ja Drop-i JavaFX-is?Sa sisestad hiirenupu sündmused, et jälgida positsioone ja liigutada objekti.

Mis on kollisioonide tuvastamine selles kontekstis?See tähendab kahe objekti kattumise kontrollimist ja kuidas see visuaalselt esitatakse.

Kas ma saan Drag ja Drop-i kasutada teiste objektide jaoks?Ja, see kontseptsioon on paindlik ja seda saab rakendada erinevatele JavaFX objektidele.