ผมเขียน actionscript ให้เวลาเอา mouse ไป over แล้วโชว์ mc ที่มีรายละเอียดขอข้อมูลขึ้นมา
แต่ว่าเวลาโชว์อันที่อยู่ไกล้ขอบ stage อะคับ มันจะเลยพื้นที่อออกมาด้วย
เราจะเขียนยังไงให้ mc ตัวที่โชว์มันไม่ออกนอกพื้นที่ที่กำหนดครับ
(http://i20.photobucket.com/albums/b238/Newlife99/out.jpg)
สังเกตมั้ยครับ ผมต้องการให้ mc ที่เป็นสีเทาๆด้านบนนั่น ไม่ออกมาเกินพื้นที่สีฟ้าอ่ะครับ
ปล.พื้นที่สีฟ้านั้นก็เป็น mc เหมือนกันครับ
:09: ก็ทำความกว้างของ mc เทาๆ ให้แคบหน่อยให้พอดีกับ mc สีฟ้าสิครับ
ไม่แน่ใจนะครับ แต่ลองทำใช้mark ดูสิครับ
คืองี้ครับ ไอ้ mc เทานั่น มันจะขึ้นมาตอนเอาเม้าส์ไป over พื้นสีเขียวที่มีธงปักอะคับ
แล้วทีนี้ ถ้าไแ over อันที่มันอยู่ริมเนี่ย มันจะเลยครับ
ผมเลยอยากให้ ถ้าไป over อันริม mc สีเทามันจะเด้งเข้ามาอยู่ในพื้นที่สีฟ้าอะคับ ไม่เด้งออกไปข้างนอกอะคับ
ก็เวลา over อันนั้น
สั่ง mc เทา ให้ไปตำแหน่ง _x , _y ที่ต้องการสิครับ
มาเก็บความรู้เพิ่ม :18:
แต่แล้วเราก็มึนกว่าเดิม ฮ่า ๆ ๆ :48: :48:
ใช้ความกว้าง กับ พิกัดของจุดที่ให้เกิดเข้าช่วยก็ได้ครับ
เช่น ถ้าความกว้างของกล่อง รวมกับ พิกัด มันเลยไปขอบด้านนอก
ก็ให้พิกัดตัว box หดเข้ามา
ตัวอย่างโดยประมาณ กรณีีเลยขอบมันเท่ากับ 300 แล้วให้มันหดเ้ข้ามาในกรอบ
if(box.width + box.x > 300){
box.x = 300 - box.width;
}
ตัวอย่างโดยประมาณ กรณีีเลยขอบมันเท่ากับ 300 แล้วให้มันย้ายไปด้านซ้าย(ต้องมั่นใจนะว่าถ้าไปด้านซ้ายมันจะไม่เกิน)
if(box.width + box.x > 300){
box.x = box.x - box.width;
}
อันนี้เขียนเป็นแนวทางเฉยๆนะครับ ลองไปประยุกต์ดูครับ
เอาง่ายๆที่สุดก็
ลากในพื้นที่จำกัดครับอ้างอิงmc.startDrag(false,0,0,Stage.width-mc._width,Stage.height-mc._height)
เพิ่งมั่วเมื่อกี้เลย :54:
// :03: อ้าวถาม on over นี่นา มั่วสุดๆเลยผม :05:
งั้นตามที่ poloh บอกครับถูกแล้ว