Dalam senario ini, kita mempunyai satu set bentuk yang mesti muncul secara rawak dari bahagian bawah skrin, mencapai ketinggian tertentu dan kemudian turun. Isu timbul apabila semua bentuk bergerak serentak tanpa sebarang kelewatan masa.
Untuk menangani perkara ini, kami akan memperkenalkan konsep yang dikenali sebagai "permulaan tertunda rawak." Setiap bentuk akan mempunyai nilai kelewatannya sendiri, dan hanya apabila nilai ini mencapai sifar barulah bentuk itu memulakan pergerakannya. Dengan mengubah nilai kelewatan ini, kami mencipta gelagat rawak yang diingini.
Dalam kod yang disediakan, kelas Shape kami mempunyai sifat seperti lokasi X bentuk, kedudukan awal Y di bahagian bawah skrin, permulaan tertunda rawak, status lukisan dan arah pergerakan. Kaedah move() memastikan bahawa bentuk hanya mula bergerak setelah bendera draw ditetapkan kepada benar. Apabila bentuk mencapai ketinggian maksimum (dalam kes ini, 50 piksel), ia membalikkan arah dan mula menurun.
Kami menggunakan Pemasa tunggal untuk mengurus pergerakan semua bentuk. Dalam ActionListener pemasa, kami mengulangi bentuk, memanggil kaedah move() dan reduceDelay() mereka. Kaedah declineDelay() mengurangkan nilai mula tertunda rawak dan apabila ia mencapai sifar, bendera seri ditetapkan kepada benar, membenarkan bentuk bergerak.
Apabila anda berlari program, anda akan melihat bentuk muncul dari bahagian bawah skrin pada selang masa rawak, mencapai ketinggian tertentu, dan kemudian jatuh semula. Animasi menghasilkan kesan visual yang menarik.
Atas ialah kandungan terperinci Bagaimanakah Pemasa Boleh Digunakan untuk Mencipta Pergerakan Objek Tertunda Secara Rawak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!