Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

Double-buffering ใน Java คืออะไร?

  • Double-buffering เป็นกระบวนการวาดกราฟิกส์ลงใน off-screen image buffer แล้วคัดลอกเนื้อหาของ buffer ไปยังหน้าจอทั้งหมดในครั้งเดียว
  • สำหรับ complex graphics การใช้ double-buffering สามารถลดปัญหา flickering ได้
  • Java Swing รองรับ double-buffering โดยอัตโนมัติสำหรับทุก components
  • Double-buffering ใช้หน่วยความจำมาก (memory intensive) การใช้งานจึงคุ้มค่าเฉพาะ components ที่ repainted บ่อยมาก หรือมี complex graphics ที่ต้องแสดง
  • ถ้า container ใช้ double-buffering double-buffered children ใดๆ จะ shared off-screen buffer ของ container off-screen buffer ที่ต้องการจะไม่ใหญ่กว่า on-screen size ของแอปพลิเคชัน
  • เพื่อเปิดใช้ double buffering ให้เรียกเมธอด setDoubleBuffered() (สืบทอดจาก JComponent) เพื่อตั้งค่า double-buffered property เป็น true สำหรับ components ที่ควรใช้ double-buffered drawing