:05: ตอนนี้พิมพ์ข้อความใน text input แล้ว เมื่อต้องการลบ ก็กด delete หมด MC ที่แสดงก็จะหาย
แต่ปัญหาคือ พอคลิกปุ่มกากบาทที่ MC (ที่แสดงผล) มันไปไม่เคลียค่าใน text input ให้
ช่วยแนะนำหน่อยนะค่ะ ยังอ่อนเรื่องสคริปนะค่ะ ขอบคุณมากนะค่ะ.. :22:
http://img2.f0nt.com/flash/3dd4603596f753ced4ff088d17b20640.swf
ใช้ วิธีการ ให้มัน โชว์ค่าว่างซิครับ
คือพอกด ลบ ปุ๊ป ให้อินพุตเท็ก เท่ากับ " "
ได้มั้ยลองดู
พระเจ้าจะช่วยเหลือ ผู้ที่ช่วยเหลือตนเองครับ :52:
http://img2.f0nt.com/flash/fd213bfd0509053d9e7db1605c5ecd4e.swf
x.onRelease = function() {
mc.tf.text = "";
update();
};
เพิ่มเป็น
x.onRelease = function() {
mc.tf.text = "";
this._parent._parent.inp1.tf.text = "";
update();
};
สู้ๆครับ ปลายทางอยู่อีกไม่ไกล :12:
:25:ขอบคุณมากค่ะ เดี๋ยวพรุ่งนี้มาส่งความคืบหน้าพร้อมชิ้นงานค่ะ :22:
:22: ลองเอาไปทำแล้วค่ะ......เลยแก้เป็น
x.onRelease = function() {
mc.tf.text = "";
for (i=1; i<=2; i++) {
this._parent._parent["inp"+i].tf.text = "";
}
update();
};
แต่พอกดลบที่ปุ่มกากบาท มันเคลียข้อมูลของ text input ทั้ง 2 อันเลยค่ะ :54:
...เลยงงๆ หรือว่าต้องมีอะไรเพิ่มอีกป่าวค่ะ :08:
:07: แล้วจะ for ทำไมล่ะครับ
กดตัวไหน ก็ลบตัวนั้นสิครับ :48:
อ้างอิงfor (i=1; i<=2; i++) {
this._parent._parent["inp"+i].tf.text = "";
}
ส่วนนี้จะทำให้เคลียร์ค่าทั้งหมดไงครับ
หากจะมีปุ่มไว้ All clear
:05: ขอโทษค่ะ คือเขียนไม่ถูกอ่ะค่ะว่าให้มันเช็คว่าเรากดปุ่มกากบาทอันไหนไป
ก็ลองใส่ไปเรื่อยๆ เลยลองลูปดูอ่ะค่ะ :44:
--เพราะว่าไม่รู้จะใส่ this._parent._parent.inp2.tf.text = ""; ไว้ตรงไหนดี
พอใส่ไป..มันก็เคลียค่าหมดในทั้ง inp1 และ inp2 เลยอ่ะค่ะ
x.onRelease = function() {
mc.tf.text = "";
this._parent._parent.inp1.tf.text = "";
update();
};
หรือว่าต้องสร้าง function() ให้มันเช็คดูว่า x.onRelease มันรับส่งค่าของ text input อันไหน (โอ๊ย...โง่จิงเรา)
:28: แนะอีกหน่อยได้ป่าวค่ะ อัลกอไม่แน่นเลยค่ะโดยเฉพาะเรื่องลูปเนี๊ยะ ....
ประมาณนั้นครับ (ตัวอย่าง)
ที่เฟรมหลักเพิ่มตัวแปรเช็คตัวนึ่ง
var choose
ตอนกดเลือกอันไหน
ก็เพิ่มในส่วนที่กดเลือก
_root.choose = this._parent._parent.inp1.tf.text;
เพิ่มตรงส่วนเคลียร์
x.onRelease = function() {
mc.tf.text = "";
_root.choose = "";
update();
};
ประมาณนั้นครับ
//หลักการคร่าวๆครับ ยังไม่ได้โหลดมาดู
:05: ลองแล้วค่ะมันไม่เกิดอะไรขึ้นเลยอ่ะค่ะ
ฝากไฟล์ที่แก้ไปดูหน่อยนะคะ :28:
...................ขอบคุณค่ะ
:48: ไม่ต้องใช้ลูปเลยครับ
จำเป็นหลักคร่าวๆไว้ก็ได้ครับว่า ถ้าต้องการทำงานซ้ำๆ ก็ใช้ลูป
แต่ถ้าเป็นเลือกที่จะทำ ก็เป็นเงื่อนไข
ในกรณีนี้ เรากด X ตัวบน เราก็จะทำเงื่อนไขลบข้อความตัวบนทิ้ง
แต่ถ้าเราทำตัวล่าง ก็จะเข้าเงื่อนไขลบตัวล่างทิ้งครับ
---------------------------------------------------------------------------------------------
สำหรับกรณีนี้ ที่คุณ sarina ใช้
คือตัว X เป็น movieClip ตัวเดียวกัน แต่ก๊อบมาใช้่กับ text input คนละตัว
เราก็ต้องทำการเซตตัวแปรให้กับ Movie ตัวนั้นไปก่อนว่า มันคือตัวที่ 1 หรือ 2
(ตามไฟล์แนบ ผมจะเขียนเพิ่มไปใน frame หลักว่า text1.selVal = 1; text2.selVal = 2;)
หลังจากนั้น ในโค้ดเราก็ค่อยเอาตัว selVal ของ movieClip ที่เรากดมาทำเงื่อนไขว่าจะให้ text input ของตัวไหนหายไป
ก็จะได้ดังตัวอย่างครับ
http://img2.f0nt.com/flash/ea64cb4906e8475a7c73eef7e8a63a39.swf
:22: ขอบคุณมากค่ะ สำหรับคำแนะนำ ตอนนี้ทำให้มันมีกรอบและขยายสเกลอยู่ค่ะ
เดี๋ยวเอามาโชว์ค่ะ :33:
:42: ตอนนี้เคลียค่าใน TExt ได้แล้วขอบคุณพี่ๆมากค่ะ และตอนนี้ก็เอางานมาโชว์
มันมีกรอบที่ข้อความแล้ว...เย้ๆๆ แล้วก็สามารถลากไปมาได้ :38:
http://img2.f0nt.com/flash/067b518950bca6dbbb7a69de63d207af.swf
:08:แต่มันก็มีปัญหามาให้พี่ๆแนะนำเพิ่มอีกแล้วค่ะ (กวนคนอื่นได้เรื่อยจิง..ๆ เรา) :04:
คือ เมื่อแรกพิมพ์ใน Text Input อยากให้ MC ที่แสดงมีเฉพาะตัวหนังสือ
แล้วเมื่อเลือก MC ตัวไหน กรอบและกากบาทค่อยขึ้นมา
แล้วเมื่อคลิ๊กไป MC อีกตัว กรอบและกากบาทอันเก่าที่เลือกมันจะหาย
และไป ขึ้นที่อันใหม่ที่เราเพิ่งคลิ๊กเลือกแทน และเมื่อคลิ๊กที่ว่าง กรอบแล้วกากบาทก็จาหายหมด
**ซึ่งได้ลองใช้ visible ก่อน แล้วค่อยให้กรอบขึ้นเมื่อคลิ๊ก แต่ก็มีปัญหาค่ะ สงสัยว่าทำลำดับขั้นตอนไม่ถูกมั้งค่ะ :05:
แนะนำหน่อยนะค่ะ
ตั้งตัวแปร global ไว้ 1 ตัวครับ เพื่อให้เรารู้ได้ว่าเราเลือกตัวไหนอยู่
(เช่น _root.selMC = 0; ไว้ตอนเริ่ม)
พอเราคลิกตัวไหน ก็ค่อยเปลี่ยนค่า _root.selMc เป็นค่าตัวที่เราทำงานอยู่
(จากอันเก่าที่ผมมีตั้งไว้ว่า text1.selVal = 1; text2.selVal = 2; นั่นแหละครับ)
งงป่าวหว่า ?? :32:
ปล. ขอให้ได้โดยไวนะครับ เห็นมีคนมาตอบใน thaiflashdev แล้วด้วยนิืนา สู้ๆครับ :12:
:01:ลองทำแบบที่พี่ใน thaiflashdev บอกแล้วค่ะ แต่พอลบแล้วพิมพ์ก็เหมือนเดิม
สงสัยต้องเก็บเก็บพี่ Poloh มั้งค่ะ :42:
:25:แต่ของพี่ งงค่ะไม่ค่อยเข้าใจเท่าไหร่ ช่วยแนะนำอีกนิดนะค่ะ
ตกลงว่าผมแก่กว่าจริงๆใช่ไหมครับเนี่ย :05:
ไว้ตอนเย็นๆ เดี๋ยวผมทำตัวอย่างคร่าวๆให้ละกันครับ
อีกอย่างนึง ผมอธิบายใครไม่ค่อยเป็นซะด้วยสิ :47:
อธิบายทีไร คนก็งงกันซะทุกทีเลย
ขอบคุณครับเด็นเด้ :22:
:32: ขอบคุณค่ะ
:05: มึนวันละนิดจิตแจ่มใส
ตอนนี้ลองทำอยู่ค่ะ มันติดนู่ติดนี่บ้างไม่ออกเมือนที่ต้องการซักที
ยังไงก้พยายามอยู่ค่ะ ...และรอคำแนะนำของพี่ๆเสมอนะค่ะ... :22:
สถานการณ์ล่าสุดเป็นยังไงบ้างครับ :09:
:47: เมื่อคืน มีคนชวนไปเที่ยวกระทันหัน เลยไม่ได้มาโพสตามที่บอกเลย
ขอโทษด้วยครับ
----------------------------------------------------------------------------------
อธิบายเป็นขั้นๆเลยละกันก็ขั้นแรก ให้เราสร้างตัวแปร global ไว้ที่ _root ก่อน
เพื่อไว้เก็บค่าว่า ณ ตอนนี้เราเลือกตัวไหนเป็นตัวสุดท้าย
(ทั้งโปรแกรมจะมีตัวเดียว)
ต่อมาก็ทำการสร้าง MovieClip ที่ไว้ให้เลือกออกมามากมาย
ให้เซตค่า และชื่อเป็นเลขที่อิงกันง่าย
(ในตัวอย่าง ถ้าเป็นตัวแรก จะเซตเป็น mc_1 และเซตค่าของมันเท่ากับ 1)
ในตอนนี้ โค้ดใน frame แรก ก็จะมีลักษณะดังนี้
_root.selVal = 0;
mc_1.thisval = 1;
mc_2.thisval = 2;
mc_3.thisval = 3;
mc_4.thisval = 4;
mc_5.thisval = 5;
mc_6.thisval = 6;
mc_7.thisval = 7;
mc_8.thisval = 8;แต่จะเห็นว่า เราสามารถใช้ for เพื่อลดรูปได้
ก็จะได้เป็น
_root.selVal = 0;
var i:Number = 0;
for(i=1;i<=8;i++){
_root["mc_"+i].thisval = i;
}
ต่อมา เราจะเขียน event ให้กับปุ่มทั้ง 8 ก็เขียนใน loop for ได้เลย
_root.selVal = 0;
for (var i = 1; i<=8; i++) {
_root["mc_"+i].thisval = i;
_root["mc_"+i].onRelease = function(){
_root.selVal = this.thisval;
}
}** หมายเหตุ จากตัวอย่าง ผมจะใช้ this.thisval เพื่อหมายถึงค่าของตัวที่เลือก เพื่อเอาไปใส่ค่าว่าตัวไหนเป็นตัวที่ถูกเลือกล่าสุด(_root.selVal)
นี่ก็เป็นตัวอย่างคร่าวๆ ในการตรวจสอบค่าที่เราเลือกไป
http://img2.f0nt.com/flash/dcc4f6b7aeda19459e50710f8047f1f5.swf
แต่ไหนๆ ก็ไหนๆแล้ว ก็มาทำต่อให้ดูเป็นรูปเป็นร่างขึ้นอีกนิด
เราจะให้ตัวที่เราเลือก ทำการแสดงผล ไม่เหมือนกับตัวอื่น
(เพิ่มอีกแค่บรรทัดเดียวใน frame แต่ไปเพิ่ม motion tween กับ stop() ใน mc อีกนิดหน่อย)
_root.selVal = 0;
for (var i = 1; i<=8; i++) {
_root["mc_"+i].thisval = i;
_root["mc_"+i].onRelease = function(){
_root.selVal = this.thisval;
this.gotoAndPlay(2);
}
}http://img2.f0nt.com/flash/820c34aa140f3e85de5ab9cfbddaed32.swf
แต่จากตัวอย่างนี้ มันก็ยังไม่สมบูรณ์อยู่ดี
คือถ้าเราเลือก 1 แล้วไปเลือก 2 ตัวที่ 1 มันก็ยังแสดงแบบเก่าอยู่
เราก็ต้องมาคิดกันต่อว่า ถ้าเลือก 2 แล้ว จะต้องให้ตัว 1 มันกลับไปอยู่ที่เดิมก่อน
แล้วถ้าเลือกตัวที่ 4 ก็ต้องให้ตัวที่ 2 กลับไปเหมือนเดิมก่อน
แล้วเราจะเขียนโค้ดยังไงดีล่ะคำตอบก็คือ เราก็เอาค่า _root.selVal มาใช้ ก่อนที่เราจะเซตค่าใหม่ให้กับมัน
var selVal = 0;
for (var i = 1; i<=8; i++) {
_root["mc_"+i].thisval = i;
_root["mc_"+i].onRelease = function(){
_root["mc_" + _root.selVal].gotoAndPlay(11);
_root.selVal = this.thisval;
this.gotoAndPlay(2);
}
}** หมายเหตุ ในตัวอย่าง ผมได้เซตให้เล่น motion ของตัว movie จาก frame ที่ 11 จนไปถึง 1 เพื่อหยุดกลับไปจุดเดิม
ถ้างานที่จะทำ ไม่มีเล่น motion ก็สามารถสั่ง gotoAndStop(1) ได้เลย
http://img2.f0nt.com/flash/c62c577b323aadbc0765e582c6872300.swf
ใครมีอะไรจะเสริม เสริมได้นะครับ
หรือถ้าตรงไหนมันงงๆ ใครเข้าใจ รบกวนฝากแปลด้วยน่อ :52:
ปล. อันนี้งงครับพี่??
อ้างคำพูดจาก: ไอ้แอนนนนน เมื่อ 23 มิ.ย. 2008, 15:35 น.
ขอบคุณครับเด็นเด้ :22:
ขอบคุณแทนเลยครับ :25:
กำลังจะหาอะไรเล่นพอดี เห็นอย่างนี้ได้ไอเดีย(ไปดองไว้)พอดี
:46:ขอบคุณค่ะ
:54: ตอนนี้ยังติดที่ จะไม่ให้มันแสดงกรอบกับ tool อ่ะค่ะ
ทำตามที่แนะนำมาแล้ว และลองขุดกระทู้เก่าๆมาลองทำตามแล้ว แต่ก็เอ๋ออ่ะค่ะ (แต่สงสัย..ตัวเองเอ๋อมากกว่า) :08:
:01: เลยต้องมาทำขยายสเกลไปก่อนโอเคป่าวค่ะ ถ้าว่างลองเอาไฟล์ไปดูหน่อยได้ป่าวค่ะ
ไม่รู้เมือนกันมันรู้สึกว่าตัวเองโง่แปลกๆ :05:
การแสดงผลของ MC
- เมื่อมีการเปลี่ยนแปลง text และไม่ใช่ค่าว่างก็จะแสดงข้อความที่พิมไป(ส่วนกรอบและ tool จะแสดงเมื่อเราคลิ๊กบนข้อความ)
- เมื่อคลิกเมาส์คลิกบนตัววัตถุ(ข้อความ) ก็จะแสดงกรอบและ tool ออกมา พร้อมกับ focus ไปยัง text ในช่องของมัน
- สามารถ select วัตถุได้ครั้งละ 1 ตัวเท่านั้น เมื่อเปลี่ยนวัตถุอันเก่าก็จะ unselect (โดยวัตถุที่ถูกเลือกจะแสดงกรอบและ tool )
-เมื่อคลิ๊กที่ว่างหรือคลิ๊กที่ input text ก็จะ unselect วัตถุ ทั้งกรอบและ tool จะไม่แสดง แสดงเฉพาะข้อความ
** แล้วที่เป็นปัญหาตอนนี้คือ visible กรอบและ tool อีกอย่างพอย้าย tool และกรอบไปอยู่อีกเฟรมโดยใช้ gotoAndPlay และ gotoAndStop
ก็ขึ้นเอ๋อไปหมดเลย :05:
ตัวอย่างเว็บค่ะ เลือกที่ text นะค่ะ
http://www.printenator.com/index.php?page=shop.product_details&flypage=flypage-ask.tpl&product_id=30&category_id=13&option=com_virtuemart&Itemid=66
:05: ตอนนี้รู้สึกว่ามึนและโง่..จิงๆ :28:
นี่คือความคืบหน้าค่ะ :40:
http://img2.f0nt.com/flash/2eec29044664884220d4a261259194f3.swf
***ช่วยเอาไฟล์ไปดู ( :02:แก้) หน่อยนะค่ะ และขอคำอธิบายถือว่าเอาบุญกับกบน้อยตาแดงๆ (อดนอน):46:
.............................................................................ขอบคุณค่ะ
ลองนั่งเค้นความคิดดูสักวัน สองวันก่อนดีไหมครับ ? :32:
บางทีเราอาจจะหาคำตอบขึ้นมาเองก็ได้ เพราะตอนนี้เหมือนกับว่า ยังเรียงลำดับไม่ถูกอยู่มากกว่า
ส่วนโค้ดหลักๆ ก็ได้เรียบร้อยหมดแล้ว
(คิดว่า ไม่น่าใช้คำสั่งมากกว่า ที่คุณ sarina เขียนถึงในตอนนี้สักเท่าไร)
ถ้าคิดได้เอง มันจะเป็นอะไรที่ติดตัวเรามากกว่าที่คนอื่นจะมาบอกให้นะครับ :12:
แต่ถ้าไม่อยากคิด หรือคิดไม่ออกจริงๆ ไว้ว่างๆผมจะเขียนไว้ให้ละกันครับ
ผมเชื่อว่าคุณทำได้จริงๆนะ แค่อาจจะต้องใช้เวลาสักเล็กน้อยเท่านั้นเอง ไม่งั้น คุณคงไม่สามารถเขียนโค้ดมาถึงตรงนี้ได้หรอก
:32: จะพยายามต่อไปค่ะ พร้อมรับคำแนะนำจากพี่ๆเสมอค่ะ :05:
นี่ไงครับ เด็นเด้
อ้างคำพูดจาก: poloh เมื่อ 19 มิ.ย. 2008, 23:17 น.
พระเจ้าจะช่วยเหลือ ผู้ที่ช่วยเหลือตนเองครับ :52:
แหม ทำยังกะไม่เคยอ่านดราก้อนบอล :30:
:21: เกิดทันครับผม
แต่ผมยังไม่ถึงขั้นพระเจ้านะครับ :48:
(ใน thaiflashdev ผมยังเป็นเด็กอ่อนอยู่เลย)
ประโยคที่ว่า เป็นประโยคที่ผมชอบมากเท่านั้นเอง
เลยเอามาบอกต่อ
อีกอย่าง ผมอยากช่วยคนที่เขาพยายามแล้ว มากกว่านั่งรอคำตอบเพียงอย่างเดียวน่ะครับเลยพิมพ์ไป :52:
:42: ตอนนี้กำลังทำอยู่ค่ะ สู้ๆ
:02: ตอนนี้ทำ select ได้แล้วค่ะ(ขอบคุณค่ะ) แต่มีปัญหาที่เจอใหม่คือปุ่มต่างๆใช้ไม่ได้เลย
ทั้งปุ่ม ลบ ขยายสเกล แล้วก็แดรค +ดร็อป มันต้องเขียนอะไรเพิ่มป่าวค่ะ (ที่เฟรม 2 ป่าวค่ะ :06:)
**เพราะลองลบโคดที่มันให้ select ออก แล้วย้าย ปุ่มต่างๆกลับมาเฟรม 1 มันกลับใช้ได้ :09:
.....................งมต่อไปทาเคชิ สู้ๆ :21:
:45: ยินดีด้วยครับ
เอา swf ที่ทำได้ตอนนี้มาแปะไว้หน่อยครับ จะได้ดูออกว่าได้ถึงไหนแล้ว
ส่วนโค้ดที่ว่า ของพวกปุ่มต่างๆ ลองเอามาแปะดูที่ frame ที่ 2 ดูก็ได้ครับ จะได้เห็นผลลัพธ์ไป
:42: นี่ความคืบหน้าค่ะ(แต่ ยังไม่เสร็จ...อิอิ)
http://img2.f0nt.com/flash/845a5979c55070543eb379f2f9ba0415.swf
ส่วนเรื่องปุ่มเดี๋ยวขอลองทำอีกนิดนะค่ะ
:47: ผมลืมบอกอีกย่างนึง เรื่อง event ซ้อน event มันจะมีปัญหาอยู่สักเล็กน้่อยน่ะครับ
(คือถ้าตัวแม่มี event แล้ว แล้วตัวลูกก็มีอีก ตัวลูกจะถูกมองข้ามไป)
ทางแก้คือ ให้เขียนตัว select ในตัวลูกแทนน่ะครับ
ใช้ if เขียนเงื่อนไขแยก ในตอนที่ว่า จะ select หรือจะ drag แทนน่ะครับ
:42: ลองเอาส่วนโค้ด ของพวกปุ่มต่างๆ มาแปะดูที่ frame ที่ 2 แล้วค่ะแต่ก้เหมือนเดิม
**เอ่อ..เรื่อง event ซ้อน event มันต้องเขียนประมาณไหนค่ะ แนะอีกนิดได้ป่าวค่ะ :33:
:06:ความงง เริ่มบังเกิดอีกแล้ว แต่จะสู้ๆต่อไป :28:
:44: ทำไมไม่ออกซะที่หว่า ชักน่าซีด :28:
ติดตรงนี้หลายวันชัก รู้สึกว่าเขาเริ่มงอกแล้วซิเรา :05:
เรื่อง event ซ้อนกัน ต้องคิดให้รอบคอบครับ
อย่างเช่น ใน mc นั้นๆมีปุ่มต่างๆ
แต่เราสั่ง mc.onRelease =fuinction(){};
ปุ่มต่างๆที่อยู่ใน mc จะโดน event mc.onRelease กลบหมดครับ
ลอง ทำตัวอย่างง่ายๆดูจะเข้าใจครับ
mc มีปุ่มด้านใน ชื่อ my_btn
เขียนที่เฟรม 1
mc.onRelease =function(){
trace("movie click");
};
mc.my_btn.onRelease=fuinction() {
trace("my btn");
};
ในที่นี้ event my_btn.onRelease จะไม่ทำงานจ๊ะ
ตามที่พี่ ej_sing ว่าเลยครับ
วิธีแก้(หรือเรียกว่าวิธีหลบดีหว่า?)
ก็ที่ผมบอกว่า เงื่อนไข select ให้ไปเขียนไว้ที่เดียวกับตัวที่ทำเงื่อนไข move น่ะครับ
(เขียนไว้ที่ frame 1 ของตัว obj ที่คุณ sarina ทำไว้ก็ได้ครับ แต่ให้อิงตัวเดียวกับที่ทำ move นะครับ)
:09: เข้าใจไหมหว่า????
:08: แหะๆๆ เขียนไม่ค่อยถูกอ่ะค่ะ
ช่วยแนะนำหน่อยนะคะ :56:
up code ตัวล่าสุดขึ้นมาให้หน่อยได้ไหมครับ
ไว้ตอนเย็นๆ จะอธิบายโค้ดให้ละกันครับ
:01: นี่ค่ะ อัพแล้วนะคะ
.............ขอบคุณมากค่ะ.. :46:
ลองเอาโค้ดไปทำความเข้าใจเองก่อนนะครับ
http://img2.f0nt.com/flash/8b5e8adfa2df2c0fefd3ab242c690200.swf
:02: มันแปลกๆน่ะค่ะ แต่ก็ขอบคุณมากค่ะ ตอนนี้กำลังศึกษาโค๊ดอยู่ค่ะ :46:
:44:
:09:
โคดที่ให้มาใน TFD ลองทำตามแล้วค่ะ แต่มันก้ยังไม่เปลี่ยนอ่ะค่ะ
ตามนี้ค่ะ
http://img2.f0nt.com/flash/01c8e7757f787fb09d59d95e616ce5dc.swf
>> ส่วนเรื่อง select movieclip ที่ทำครั้งก่อน ขอบคุรมากนะคะ แต่บั๊คมันเยอะค่ะ..อีกอย่างโค๊ดเปลี่ยนไปเยอะเลย (มึนนิดหน่อยค่ะ)
บั๊คที่มีคือ
**อธิบายตัวแปร inp... = input text
text... = dynamic text (mc output)
- เมื่อพิมพ์ inp1 ข้อความมันก็แสดงที่ text1 ใช่ป่าวคะ
แล้วทำการลบที่ปุ่ม X มันก็จะปรับเป้น alpha = 0; ซึ่งยังสามารถ select ได้อยู่
และเมื่อพิมข้อความใหม่เพิ่มหลังจากลบแล้ว มันก็ไม่ขึ้น tool ค่ะ
-ในกรณีที่ลบจาก input text โดยตรงมันก้จะลบให้เฉพาะข้อความ ส่วน tool ยังไม่หายค่ะ
มันต้องพิมพ์สลับไปมาถึงหายเอ๋อค่ะ
:16:ว่าจะถามพี่หลายวันแล้วแต่เกรงใจค่ะเลยลองแก้เอง แต่ก็มึนๆมั่วๆ เพราะโคดเปลี่ยนไปเยอะเลย
ขอบคุณมากนะคะ ที่ตอบให้ใน TFD .........ขอคำแนะนำด้วยค่ะ :05:
จะบอกว่า ช่วงนี้ พี่เริ่มงานเข้าแล้ว :47:
คงไม่ว่างอธิบายเท่าไรนะ
แต่ว่าฟังก์ชั่นทีพี่ให้ไปนั้น พี่ใช้ได้จริงๆนะครับ
ลองเปิด help ทำความเข้าใจดูก่อนก็ได้
ไม่ก็ลองปริ้นโค้ดมาใส่กระดาษ แล้วลองประมวลนึกภาพตามในหัวทีละขั้นเอา
น่าจะทำความเข้าใจได้ง่ายกว่า
ปล. จริงๆที่น้องถามมาตอนแรกๆ พี่ก็ตอบไปทีละขั้นตอน ทีละอย่าง
บางที ปัญหามันก็จะเกิดขึ้นใหม่มาแทนที่เรื่อยๆ เพราะบางอย่าง มันเขียนไปตรงๆไม่ได้
อาจจะต้องเขียนอ้อมปัญหาไปบ้างสักเล็กน้อย ถึงจะไม่มีปัญหาอะไร
ปล2. ที่พี่ไม่อยากเขียนแก้โค้ดให้เท่าไร เพราะมันจะทำให้น้อง ไม่ได้ฝึกหาทางแก้ไขปัญหา
หรือหาทางออกเอง และกลัวจะทำให้น้องติดนิสัยแบบนั้นไปด้วย
(ตอนที่ติวให้น้อง หรือเพื่อนในเอก ก็โหดแบบนี้เหมือนกันนะจ๊ะ)
ปล3. ถ้าน้องอยากให้คนแก้โ้ค้ดให้ หรืออยากให้มันจบๆไป พี่ก็เขียนโค้ดให้เสร็จเรียบร้อยแล้ว
แต่พี่จะไม่อธิบายให้ฟังอีกเด็ดขาด ไปทำความเข้าใจเอาเอง ว่าอะไรคืออะไร
ถ้าอยากได้ก็บอกมาละกัน จะได้อัพขึ้นไปให้
ปล4. ขอเรียกน้องเลยละกันครับ ไหนๆก็เรีียกผมว่าพี่ไปแล้ว :52:
:05: เอาไงดีค่ะเนี๊ยะ ชักเครียดขึ้นมาแล้ว
:54:อยากให้มันหลุดจะขั้นตอนนี้ก็อยากค่ะ แต่ที่ต้องทำต่อจากนี้ก็เหลืออีกเยอะ
ทั้งเปลี่ยนฟ้อนและเปลี่ยนสี แล้วไอ้ที่ลากไปมาไม่ให้เกินกรอบอีก......ถ้าพี่อัพไฟล์
คำถามที่จะปรึกษาหลังๆ คงไม่ได้แล้วใช่ป่าวค่ะ
................................จะลองแก้อีกรอบละกันค่ะ(ติดมาอาทิตย์นึงแล้ว :08:)
ขอบคุณพี่มากนะค่ะ..................ที่ให้คำแนะนำตลอดเลยค่ะ :46:
ส่วนที่เหลือจากนี้แล้วแต่ความกรุณาค่ะ :56:
ใจเย็นๆน่อ อย่าเพิ่งเครียดมากไป
ที่เขียนไป เพราะไม่มั่นใจว่า เป็นงานเพื่อการศึกษา หรือว่าเป็นงานเพื่อส่งลูกค้าไง
ถ้าเป็นงานที่ส่งลูกค้า ก็คิดว่า เอาโค้ดไปเลย น่าจะดีกว่า เพราะว่าหลายวันแล้ว เกรงใจน้องด้วย
และที่จะไม่ตอบคำถาม เพราะว่า วิธีการเขียนโค้ด มันเป็นเรื่องของแนวคิด กับความชอบ
ขืนมามัวนั่งอธิบายโค้ดหนักๆแบบนี้ บอกได้คำเดียว ว่าเหนื่อยครับ :47:
(เพราะว่าอธิบายใครก็ไม่ค่อยจะเป็นซะด้วยสิ อีกอย่างตามที่กล่าวไว้คือ งานเข้า..)
แต่ถ้างานนี้ไม่ได้รีบร้อน ทำเพื่อศึกษา ก็ค่อยๆลองผิดลองถูกเอาดีกว่าไง :52:
ค่อยๆถามใน TFD ก็ได้ครับ คนเก่งมากมาย :12:
:52: ค่อยโล่งใจหน่อย นึกว่าพี่จะไม่ตอบซะแล้ว
เป็นงานที่ส่งลูกค้าอ่ะค่ะ เพราะเลื่อนส่งความคืบหน้าจากอาทิตย์ที่แล้ว
แต่จิงๆก็อยากเรียนรู้เพิ่มเติมนะค่ะ ช่วยอัพไฟล์ได้ป่าวค่ะแล้วเดี๋ยวจะศึกษาจากโค๊ดเองก็ได้ค่ะ
เพราะไม่ได้เสร็จแค่นี้อยู่แล้ว..ต้องเหลืออีกบานเลยค่ะ ขอบคุณพี่มากนะค่ะ :05: (ซึ้ง...)
****เอาไว้จะส่งความคืบหน้าและคำถามเรื่อยๆค่ะ ...อิอิอิ :02:
อันนี้คือผมลัพธ์ของโค้ดที่อัพไปนะครับ
http://img2.f0nt.com/flash/6036913439926c8be315f0346d17e29a.swf
อันนี้เขียน MovieClip ซ้อนกันลึกหลายชั้นอยู่ เพื่อให้ได้ผลลัพธ์ตามแบบเวบนั้นนะ
พยายามต่อไปน่อ นานเกินเดี๋ยวลูกค้่าจะชิ่งเอา :12:
:05: ขอบคุณพี่มากๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆ ค่ะ
เดี๋ยววันหลังเอาคำถามมาฝากเยอะๆค่ะ (ล้อเล่นน่า...อิอิอิ)
ขอบคุณพี่มากจิงๆนะค่ะ..... :46:
ความจริง ถ้ารับงานมาแล้วทำไม่ได้
เอาเฉพาะส่วนนั้นมาจ้างผมก็ได้นะครับ :54:
:49: กะลังเก็บเงินไปเรียนต่อพอดีเลย 55+
แต่จริงๆ ก่อนรับงานจากลูกค้า อยากให้รับเท่าที่เราทำไหวนะครับ
เพราะถ้ารับมา แล้วทำไม่ได้ มันจะเดือนร้อนทั้งตัวเรา และตัวลูกค้าด้วยครับ
ชื่อเสียขึ้นมา แก้ยากอยู่นะนั่น :52:
:02:พี่จะเรียนต่อโทหรอค่ะเก่งจัง ส่วนเรื่องจ้างก็อยากนะค่ะ เพราะอยากให้งานเสร็จออกมาเร็วๆ
แต่พี่อีกคนที่คุมอีกที เค้าว่าหัดทำไปเถอะเดี๋ยวงานหน้ามาคล้ายแบบนี้อีกจะได้ทำเองเป็น...
ขอบคุณพี่มากนะคะ ได้อะไรเยอะแยะมากเลย แต่ก็ต้องทำส่วนที่เหลือต่ออยู่ดี ขอบคุณพี่มากนะคะ
.............แล้วจะมาปรึกษาพร้อมกระทู้ใหม่ แต่โปรเจคเดิมค่ะ อิอิอิ :22:
:48:เพราะยังไม่เก่งแหละครับ ถึงได้คิดจะเรียนต่อ
เดี๋ยวนี้เด็กเก่งๆจบใหม่ๆเยอะแยะมากมาย เทคโนโลยีก็ก้าวหน้าขึ้นทุกวัน
ถ้าไม่รู้ให้มากขึ้น กลัวว่าหลังๆจะหางานไม่ได้น่ะครับ :47:
ส่วนเรื่องงานนั้น ถ้าพี่คนคุมเขาว่างั้น งั้นก็ศึกษาให้เต็มที่เลยครับ :52:
ยังไงก็มีคนรับหน้าให้แทนอยู่แล้ว และก็ได้ศึกษาไปในตัว :12:
ขอบคุณมากๆๆๆ ค่ะ :45:
สุดยอดเลยครับทั้งสองคน สู้ๆ
:09: พี่คะ ถ้าเราจะเปลี่ยน font style แล้วก็ สี ของ font ต้องเขียนสคิปแบบไหนค่ะ
ช่วยแนะนำหน่อยนะคะ :42:
**ส่วนความคืบหน้าของงานเก่า ตอนนี้ทำการเปลี่ยนสีของ MC ที่กำหนดพื้นที่ (ซึ่งเอาไว้ทำเป็นแบ็คกราวได้แล้ว)
เปลี่ยนสี ลองหาคำสั่ง setColor ดูนะครับ
(เปิด help ดูก็ได้ น่าจะมีตัวอย่าง)
ส่วนเปลี่ยน font style ไม่เคยทำครับ :47:
:42:เมื่อคืนเซิชเจอน่ะค่ะ แต่มันเรียกฟ้อนจากเครื่องอ่ะค่ะ ถ้าเราต้องการให้มันเรียกฟ้อน
จากไลบารี่ แล้วให้มันแสดงตามฟ้อน เมื่อเราทำการเปลี่ยนตามที่เรา select นะค่ะ
เค้าเขียนเรียกยังไงหรอคะ
http://img2.f0nt.com/flash/ff79d64f8f15bc6d51c96dec745c1b16.swf
//Drag a comboBox component from the components Panel to your FLA's Library.
import mx.controls.ComboBox;
var myCB:ComboBox;
function init ()
{
myCB = ComboBox(createClassObject(ComboBox,"myCB", this.getNextHighestDepth()));
myCB.setSize(175,22);
myCB.rowCount = 7;
myCB.dataProvider = TextField.getFontList ();
myCB.open ();
myCB.addEventListener ("change", function ()
{
myCB.textField.setStyle ("fontFamily", myCB.value);
});
myCB.addEventListener ("load", setCBListFonts);
myCB.addEventListener ("scroll", setCBListFonts);
}
function setCBListFonts ()
{
for (var i in myCB.dropdown.listContent)
{
var _tf:TextFormat = myCB.dropdown.listContent[i].cell.getTextFormat ();
_tf.font = myCB.dropdown.listContent[i].cell.text;
myCB.dropdown.listContent[i].cell.setTextFormat (_tf);
}
}
init();
ไม่ค่อยรูเรื่องการใช้คอมโพแนนนะค่ะ ช่วยหน่อยนะคะ :42:
:52: วันนี้ทำเปลี่ยนสี ฟ้อนได้แล้วค่ะ แต่มันเปลี่ยนหมดทุกตัวเลย ไม่เป็นไปตามที่ select ไว้
แต่จะพยายามต่อไปค่ะ :02:
สู้ๆครับ
เรื่อง component ก็ไม่เคยใช้เหมือนกัน :47:
(บอกตามตรงว่า งาน flash ผมทำมาไม่กี่งานเอง
เลยไม่ค่อยเชี่ยวชาญอะไรมากมาย
รู้แค่โค้ดที่จำเป็นต้องใช้ในงานนั้นๆเท่านั้นเอง)
เรื่องคอมโพแน้นในแฟลช ผมก็ไม่สันทัดเหมือนกันครับแทบไม่เคยใช้......
คุณสารินา เก่งครับ ขยันจัง สุ้ๆ นะครับ พี่พูโล ก็สุดยอด ครับ
ขอให้เสร็จคอมพีทในเร็ววันครับ
http://img2.f0nt.com/flash/7496f4f765ed19a2b55f0806aa24748c.swf
เอาไปลองงมดูนะครับ ดัดแปลงจากอันที่เอามาโพสน่ะ
ลองศึกษาดูก่อนครับ
อ้างอิงimport mx.controls.ComboBox;
var myCB:ComboBox;
var choosefont
function init ()
{
myCB = ComboBox(createClassObject(ComboBox,"myCB", this.getNextHighestDepth()));
myCB.setSize(175,22);
myCB.rowCount = 7;
myCB.dataProvider = TextField.getFontList ();
myCB.open ();
myCB.addEventListener ("change", function () //เมื่อเปลี่ยนแปลง
{
myCB.textField.setStyle ("fontFamily", myCB.value); // ส่วนนี้จะเปลี่ยน ที่ combo ให้เป็นฟ้อนต์เดียวกัน
var format1_fmt:TextFormat = new TextFormat();
format1_fmt.font = String(myCB.value); //
txt.setTextFormat(format1_fmt); // ตรงนี้นะครับที่จะเปลี่ยน f0nt ให้กับ txt ใดๆ
});
myCB.addEventListener ("load", setCBListFonts);
myCB.addEventListener ("scroll", setCBListFonts);
myCB.addEventListener ("open", setCBListFonts);
}
function setCBListFonts ()
{
for (var i in myCB.dropdown.listContent) //ส่วนนี้ จะเป็นการ แสดงผลฟ้อนต์ที่ combobox
{
var _tf:TextFormat = myCB.dropdown.listContent.cell.getTextFormat ();
_tf.font = myCB.dropdown.listContent.cell.text;
myCB.dropdown.listContent.cell.setTextFormat (_tf);
}
}
init();
// ตัวสำคัญคือ บรรทัดสีแดงครับ
ต้องเปลี่ยนนะ เพราะงานของน้อง มีการเลือก mc ด้วย (มีหลายตัว)
และอย่าลืมเรื่อง เวลาเปลี่ยน mc ไปมาด้วย
หาก mc บน เลือก ฟ้อนต์นึง
อีก mc เลือก อีกฟ้อนต์
combobox ที่แสดงผล จะยังไม่เปลี่ยนตามนะครับ
ต้องเขียนสคริปอีกบานตะเกียงเลยนะครับ
ขอบคุณครับพี่จักรี
ส่วนพี่ ej_sing สุดยอดเลยคร้าบ :25:
:48: เรื่อง component นี่ เป็นเรื่องหนึ่งที่ผมไม่ค่อยจะรู้เรื่องเท่าไรเลย และก็ไม่รู้ว่าจะใช้ตอนไหนดี
เพราะเขียนไม่เป็น กับ ไม่รู้ว่าหาที่ไหนและมันช่วยอะไรได้บ้าง :47:
ยังงงเหมือนกันครับว่าบรรทัดไหนเป็นการเอา font จากในเครื่องมาแสดง
อันนี้หรือเปล่าครับ มั่วล้วนๆ :47:
myCB.dataProvider = TextField.getFontList ();
อ้างคำพูดจาก: poloh เมื่อ 05 ก.ค. 2008, 11:11 น.
อันนี้หรือเปล่าครับ มั่วล้วนๆ :47:
myCB.dataProvider = TextField.getFontList ();
นั่นล่ะครับ เอามันขึ้นมาแสดงใน combobox
แต่ปกติ จะไม่แสดงรูปแบบ f0nt
ในสคริปมีฟังค์ชั่น ให้แสดงผลฟ้อนต์ด้วย
ก็เจ๋งดีครับ
:33:โอว...ขอบคุณมากค่ะ พอดีไปต่างจังหวัดมา เลยไม่ได้เข้ามาดูน่ะค่ะ
เดี๋ยวจะลองศึกษาดูนะค่ะ แล้วถ้าดึงฟ้อนจากไลบารี่มาใช้นี่ต้องทำไงอ่ะคะ :46:
ผมไม่รู้เรื่องดึง text จาก ไลบารี่ มาแสดงนะครับ
แต่ถ้าเอาจากสิ่งที่ผมรู้มาทำให้มันได้เนี่ย
ผมจะลองทำแบบสร้างเป็น frame ต่างๆไว้
แล้วแต่ละ frame ก็ embemed font ของแต่ละอันไว้เลยน่ะครับ
พอเลือก drop down อันนี้ ก็ให้ไปเล่นที่ frame นั้น
อันนี้เป็นแนวคิดคร่าวๆนะครับ ยังไม่ได้ลอง ไม่รู้ว่าจะมีปัญหาตรงไหนหรือเปล่า
:09: มันทำแบบนั้นได้ด้วยหรอค่ะ (ทำไม่เป็น :05:)
แบบไหนก็ได้ค่ะ แบบที่พี่ว่าอ่ะน่าสนมากเลยแต่ทำไม่ถูกอ่า
ช่วยแนะนำหน่อยนะคะ.. :33:
ถ้าให้แนะนำอีก ก็คงพูดคำเดิมแหละครับ
ไม่รู้จะพูดยังไงดี :48:
เพราะไม่ได้ลองทำเองด้วย
เอาเป็นว่า พยายามต่อไปละกันครับ :52:
ความคืบหน้า....
:02: เปลี่ยนสีทำได้สมบูร์แล้วค่ะ ส่วนเปลี่ยนฟ้อนได้แล้วส่วนนึงแต่ติดปัญหาคือ
- พอคลิกเลือก text input ในช่องของมันหลังจากพิมไปแล้ว มันเปลี่ยนกลับเป็น F0nt เดิม
- แล้วก็พอคลิ๊กเปลี่ยน event แล้วกลับไปคิ๊กตัวเดิม มันเปลี่ยนกลับเป็น F0nt เดิมเช่นกัน
http://img2.f0nt.com/flash/a583c625bc9f2d081167b5401a96fbb6.swf
//******change font
import mx.controls.ComboBox;
var myFontLabel = ["Times", "Tahoma", "Arial","Curlz MT","Edwardian Script ITC"];
var myFontLib = ["myFont1", "myFont2", "myFont3", "myFont4", "myFont5"];
var myCombo_cb:ComboBox;
var myTxtFormat:TextFormat = new TextFormat();
// add Label&Data into ComboBox
for (i=0; i<=4; i++) {
myCombo_cb.addItem(myFontLabel[i],myFontLib[i],myFontLib[i]);
}
myCombo_cb.addEventListener("change",showFontSelect);
function showFontSelect(obj) {
myTxtFormat.font = myCombo_cb.getItemAt(myCombo_cb.selectedIndex).data;
buf_obj.obj_area.obj_txt.display_txt.setTextFormat(myTxtFormat);
}
myTxtFormat.font = myFontLib[0];
buf_obj.obj_area.obj_txt.display_txt.setTextFormat(myTxtFormat);
ขอคำแนะนำเช่นเดิมนะค่ะ ขอบคุณมากๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆ
สู้ๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆๆ ตาย :28:
:01: สู้ๆๆๆๆๆ........
:08: ถามทีเดียว 2 บอร์ดเลยเหรอครับ
:05:เงียบเหงา เศร้า ซึม
เหมือนเดิมล่ะครับ
ต้องเก็บค่า ฟ้อนต์ล่าสุดในแต่ละ text ไว้ด้วย พอทำอะไรเสร็จ ก็ดึงค่านี้มาใช้
ตอนนี้เจอยังครับ ว่าปัญหามันเกิดจากอะไร
ลองนึกดูนะครับ เมื่อไรหรือคำสั่งที่เกิดปัญหา
ไว้หาเจอแล้วค่อยหาทางแก้ครับ
:05: ยังไม่เจอเลยค่ะ ลองมั่วๆแล้ว ก็เป็นแบบเดิม
แต่จะทำต่อไปละค่า สู้ตายๆตาลายสู้ๆ :04:
ถ้าให้ผมเดา ปัญหาอยู่ตรงคำสั่ง
buf_obj.obj_area.obj_txt.display_txt.text = this.text;
ซึ่งอาจจะเป็นไปได้ว่า พวกค่า font ของมัน จะถูก reset ไปด้วยตรงนี้
ดังนั้น จึงต้องเซตฟอนต์ หลังจากเปลี่ยนข้อความตรงนี้ด้วยครัับ
ผมเดาเอานะ ลองดูละกัน
------------------------------------------------------------------------------
อีกอย่างนึง ที่พิมพ์ภาษาไทยไม่ขึ้น
ถ้าเอาตัวอย่างของผมมาแก้ไข เป็นเพราะว่า ไม่ได้ embemed font ภาษาไทยลงไปครับ
ยังไงก็ embemed ไปด้วย ไม่ก็เอา embemed ออกไปครับ
:02: แก้ได้แล้วค่ะ ขอบคุณสำหรับคำแนะนำจากพี่ๆมากนะคะ
คำถามต่อไปคือ เราจะโชว์ font style ใน combobox ยังไงอ่ะคะ :21:
**เดี๋ยวค่อยมาอัพความคืบหน้านะคะ
ดีใจด้วยครับ :52:
:52: combobox ไม่เคยใช้ น่ะครับ ขอไม่ออกความเห็นละกัน
เอาไปลองดัดแปลงครับ
แบบง่ายๆครับ
ลองหาๆดูจากใน Help บ้างก็ได้นะครับ
เขียนได้ขนาดนี้แล้ว
http://img2.f0nt.com/flash/8ee3efa6373924f4e91d4042cde97aeb.swf
อ้างอิงvar cbListener:Object = new Object();
cbListener.change = function() {
var my_fmt:TextFormat = new TextFormat();
switch (my_cb.value) {
case "p" :
my_fmt.bold = false;
my_fmt.italic = false;
break;
case "i" :
my_fmt.bold = false;
my_fmt.italic = true;
break;
case "bi" :
my_fmt.bold = true;
my_fmt.italic = true;
break;
case "b" :
my_fmt.bold = true;
my_fmt.italic = false;
break;
}
txt.setTextFormat(my_fmt);
};
my_cb.addEventListener("change",cbListener);
====================================
หลักการเดียวกับที่แล้วๆมานะครับ
เอาค่าที่ได้มา ใส่ให้ text ตัวนั้นๆ แล้วเก็บค่า style ล่าสุดไว้ด้วย
พอเลือกตัวอื่นๆ ก็ทำฟังชั่นเช็ค style ล่าสุด ให้แสดงผลตรงกัน
:12: สุดยอดเลยค่ะพี่ ej_sing ยังคิดไม่ถึงเลยว่าต้องทำแบบนี้ด้วย ขอบคุณมากๆค่ะ
เดี๋ยวจะไปลองทำเพิ่มค่ะ
** แต่ที่จะทำคือจิงๆคือแบบนี้อ่ะคะ
http://img2.f0nt.com/flash/ff79d64f8f15bc6d51c96dec745c1b16.swf
เหมือนที่ให้ดูครั้งก่อน เพราะทำ combobox โดยดึง F0nt จากไลบารี่ ลองเอาโคดไปใส่แล้วมันไม่มีอะไรเกิดขึ้นอ่ะค่ะ
มันต้องทำยังไงหรอค่ะ
function setCBListFonts ()
{
for (var i in myCB.dropdown.listContent) //ส่วนนี้ จะเป็นการ แสดงผลฟ้อนต์ที่ combobox
{
var _tf:TextFormat = myCB.dropdown.listContent.cell.getTextFormat ();
_tf.font = myCB.dropdown.listContent.cell.text;
myCB.dropdown.listContent.cell.setTextFormat (_tf);
}
}
เอาฟังก์ชันนี้มาอ่ะค่ะ ถูกป่าวคะ
แต่ไม่รู้มันเป็นอะไร ไม่เห็นแสดงรูปแบบของแต่ละ F0nt เลย
................................-ขอบคุณมากค่ะ
ยังไม่เข้าใจคำถามครับ ไม่มีอะไรเกิดขึ้น คืออะไร
:05:
ตัวอย่างที่โหลดมา (ดึงฟ้อนจากเครื่อง)
http://img2.f0nt.com/flash/ff79d64f8f15bc6d51c96dec745c1b16.swf
**แต่ที่ต้องการทำตอนนี้
คาแรกเตอร์ของฟ้อนในคอมโบบ็อก ตอนนี้ทำให้มันโชว์ style ในลิสได้แล้ว
แต่พอเลือกเสร็จใน combobox มันแสดงเป็นแค่ฟ้อนธรรมดา (ไม่แสดง style มันอ่ะค่ะ)
ในตัวอย่างข้างบนมันดึงฟ้อนมาจากเครื่อง แต่ที่ทำตอนนี้คือดึงฟ้อนมาจากไลบารี่
ช่วยแนะนำหน่อยนะคะ
ถ้าจะให้ใน combobox เปลี่ยนเป็น bold หรือ italic เฉพาะตัวๆไปนี่ ผมยังทำไม่ได้ครับ :46:
ทำได้แต่ setStyle ทั้ง combobox เลย bold ก็ ทั้งหมด เอียงก็ทั้งหมด ประมาณนั้นครับ
ขอโทษค่ะพี่ ej_sing อธิบายจนพี่เข้าใจผิด :05:
ที่ต้องการทำตอนนี้ ทำได้แล้วค่ะ คือข้างล่างนี่
http://img2.f0nt.com/flash/a091bf2645c497432f7bbc5609919636.swf
คือจากเดิมที่ดึงฟ้อนจากเครื่องเรา ให้เป็นดึงจากไลบารี่แทนน่ะค่ะ
import mx.controls.ComboBox;
var myCombo_cb:ComboBox;
function init ()
{
myCombo_cb.rowCount = 3;
var myDP:Array = new Array();
myCombo_cb.dataProvider = myDP;
var myFontLabel = ["Times", "Tahoma", "Arial", "Curlz MT", "Edwardian Script ITC"];
var listContent = ["myFont1", "myFont2", "myFont3", "myFont4", "myFont5"];
for (var i = 0;i <= 4;i++)
{
myDP.addItem(myFontLabel[i], listContent[i], listContent[i]);
}
myCombo_cb.addEventListener ("change", function ()
{
myCombo_cb.textField.setStyle ("fontFamily", myCombo_cb.value);
var myTxtFormat:TextFormat = new TextFormat();
myTxtFormat.font = String(myCombo_cb.value);
txt.setTextFormat(myTxtFormat);
});
myCombo_cb.addEventListener ("load", setCBListFonts);
myCombo_cb.addEventListener ("scroll", setCBListFonts);
}
function setCBListFonts ()
{
for (var i in myCombo_cb.dropdown.listContent)
{
var _tf:TextFormat = myCombo_cb.dropdown.listContent[i].cell.getTextFormat ();
_tf.font = myCombo_cb.dropdown.listContent[i].cell.text;
myCombo_cb.dropdown.listContent[i].cell.setTextFormat (_tf);
}
}
init();
:33:แต่ยังไงก็ขอบคุณพี่มากๆเลยนะคะ ได้ไอเดียมาหลายอย่างเลย
......และก็ขอโทษอีกครั้งด้วยที่ถามจนพี่งง :08:
**แล้วก็นี่ไฟล์ค่ะเผื่อใครอยากใช้แบบดึงฟ้อนจากไลบารี่ :42:
:12: เจ๋งดีครับ
และขอบคุณที่เอาความรู้มาแบ่งปันครับ
:40:ขอให้งานเสร็จในเร็ววันนะครับ
งานด่วนสินะครับ ^^"
แต่ผมก็พึ่งรู้เหมือนกันนะว่า ใน Combo Box มันเปลี่ยนฟอนท์เป็นแถวๆ ได้ด้วย
ป.ล. ThaiFlashDev โดเมนหมดอายุ เข้าบ่ได้ครับ :05: