Về cơ bản tôi đang cố gắng tạo hiệu ứng ngắn bằng cách sử dụng JavaFX. Tôi có hình dạng của một trái tim (được cộng lại với nhau từ hai vòng tròn và một đa giác) mà tôi có thể thay đổi về kích thước bằng cách sử dụng giá trị kép p
. "Kích thước Standart" sẽ là p = 1.0;
.Làm cho JavaFX chờ và tiếp tục với mã
Tôi đang cố gắng thêm hiệu ứng bơm vào tim. Tôi có phương pháp pumpOnce()
:
public void pumpOnce(){
p = p + 1;
initHeart();
//Here goes what ever it takes to make stuff working!!
p = p - 1;
initHeart();
}
initHeart()
thu hút trung tâm dựa trên p
.
Tôi đã phát hiện ra rằng Thread.sleep();
hoặc các phương pháp tương tự sẽ không hoạt động do triết lý chuỗi trong JavaFX.
Nhưng tôi có thể sử dụng cái nào?
Bạn có thể sử dụng 'PauseTransition' hoặc' Timeline' bằng 'KeyFrame' để tạo các chuyển tiếp hoạt ảnh phức tạp/tùy chỉnh hơn. –
Vâng tôi đã nhìn thấy câu trả lời của bạn ở đâu đó quanh Uluk, nhưng tôi không thực sự cố gắng thực hiện một quá trình chuyển đổi, nhưng về cơ bản là một hoạt ảnh hai khung hình. Tôi có thể sử dụng 'Timeline' tương tự' Thread.sleep() 'không? – Maverick283
Một 'PauseTransition' không phải được liên kết với một nút. Bạn chỉ cần tạo một cái, sử dụng trình xử lý 'setOnFinished' của nó để mã thực thi sau khi tạm dừng và gọi' play() 'để bắt đầu nó. –