ทำให้ mc ไม่แสดงผลนอกพื้นที่ที่ต้องก

เริ่มโพสต์โดย newlife99, 11 ก.พ. 2009, 22:34 น.

0 สมาชิก และ 1 บุคคลทั่วไป กำลังเปิดอ่านโพสต์นี้

newlife99

ผมเขียน actionscript ให้เวลาเอา mouse ไป over แล้วโชว์ mc ที่มีรายละเอียดขอข้อมูลขึ้นมา

แต่ว่าเวลาโชว์อันที่อยู่ไกล้ขอบ stage อะคับ มันจะเลยพื้นที่อออกมาด้วย

เราจะเขียนยังไงให้ mc ตัวที่โชว์มันไม่ออกนอกพื้นที่ที่กำหนดครับ



สังเกตมั้ยครับ ผมต้องการให้ mc ที่เป็นสีเทาๆด้านบนนั่น ไม่ออกมาเกินพื้นที่สีฟ้าอ่ะครับ
ปล.พื้นที่สีฟ้านั้นก็เป็น mc เหมือนกันครับ

ej_sing

 :09: ก็ทำความกว้างของ mc เทาๆ ให้แคบหน่อยให้พอดีกับ mc สีฟ้าสิครับ

ไอ้เบิร์ด

ไม่แน่ใจนะครับ แต่ลองทำใช้mark ดูสิครับ
"...ถ้าสายตาเราชินกับในที่มืดแล้ว คงยากที่จะเพ่งมองโลกภายนอกได้..."

newlife99

คืองี้ครับ ไอ้ mc เทานั่น มันจะขึ้นมาตอนเอาเม้าส์ไป over พื้นสีเขียวที่มีธงปักอะคับ

แล้วทีนี้ ถ้าไแ over อันที่มันอยู่ริมเนี่ย มันจะเลยครับ

ผมเลยอยากให้ ถ้าไป over อันริม mc สีเทามันจะเด้งเข้ามาอยู่ในพื้นที่สีฟ้าอะคับ ไม่เด้งออกไปข้างนอกอะคับ

ej_sing

ก็เวลา over อันนั้น
สั่ง mc เทา ให้ไปตำแหน่ง _x , _y ที่ต้องการสิครับ

มือหมับหัดไข่

มาเก็บความรู้เพิ่ม  :18:

แต่แล้วเราก็มึนกว่าเดิม ฮ่า ๆ ๆ  :48: :48:

poloh

ใช้ความกว้าง กับ พิกัดของจุดที่ให้เกิดเข้าช่วยก็ได้ครับ

เช่น ถ้าความกว้างของกล่อง รวมกับ พิกัด มันเลยไปขอบด้านนอก 
ก็ให้พิกัดตัว 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;
}


อันนี้เขียนเป็นแนวทางเฉยๆนะครับ ลองไปประยุกต์ดูครับ
ก่อสร้างกับทำลาย เหมือนที่ลงมือ ต่างที่การกระทำ

ej_sing

#7

เอาง่ายๆที่สุดก็ ลากในพื้นที่จำกัดครับ

อ้างอิงmc.startDrag(false,0,0,Stage.width-mc._width,Stage.height-mc._height)

เพิ่งมั่วเมื่อกี้เลย  :54:

//  :03: อ้าวถาม on over นี่นา มั่วสุดๆเลยผม :05:
งั้นตามที่ poloh บอกครับถูกแล้ว

SMF 2.1.7 © 2026, Simple Machines