บทความที่ได้รับความนิยม

วันศุกร์ที่ 1 กรกฎาคม พ.ศ. 2554

JavaBeans ใน Netbeans

  
 Howdy!  คราวนี้เรื่องราวที่เราสนใจก็ยังอยู่ที่ JavaBeans ค่ะ ไฟล์ .jar ที่ได้ใช้ Beanbox ครั้งที่แล้ว   จะนำมาใช้ด้วยในครั้งนี้    เราจะใช้ netbean เขียนโปรแกรมที่แสดงการนับ โดยจะนับทุกๆ 1 วินาที และทำงานดังนี้
-        เมื่อกดปุ่ม Start จะเริ่มนับ
-        เมื่อกดปุ่ม Stop จะหยุดที่วินาทีนั้น
-        เมื่อกดปุ่ม Reset จะตั้งค่าเริ่มใหม่เป็น 0

JFrame Form 
สร้าง Java Project ที่ยังไม่มี class ใดๆและสร้าง class ที่มี JFrame Form โดย click ขวาที่ <default package>  แล้วเลือก New  -> JFrame Form…

            Adding Java Beans
      ที่ Palette  click ขวา แล้วเลือก Palette Manager…

    
     เมื่อได้หน้าต่าง Palette Manager  แล้ว เราจะเพิ่ม file .jar มาไว้ที่  categories ชื่อ beans
  
  
เพิ่มโดยเลือก Add from JAR…  ->  เลือก file .jar ->  เลือก components ที่จะเพิ่ม ->  เลือก Palette Categories

Palette Categories จะเลือกเป็น Beans ทุกครั้ง 

Components ที่จะเพิ่มมี 2 beans ดังนี้
     - Counter bean ใน Counter.jar  ใช้การนับและแสดงจำนวนที่นับ
     - TickTock bean ใน misc.jar ที่โหลดมาได้จาก ……   ใช้เป็นนาฬิกา

Connecting Counter &TickTock bean
 
ลาก Counter bean และ  TickTock bean  มาวางใน form 


             เพื่อนๆจะไม่เห็น TickTock bean ใน form แต่จะเช็คได้จาก Inspector ด้านมุมซ้ายล่าง  เพื่อนๆจะเปลี่ยนชื่อตัวแปรได้ที่ส่วนนี้ เราตั้งชื่อ Counter bean  เป็น  counter และ  TickTock bean  เป็น time ดังภาพ
 
            ปุ่ม Connection Mode  ใช้ในการเชื่อมการติดต่อ เมื่อกดปุ่ม connection mode  แล้วเลือก object ที่สร้างเหตุการณ์และ object ที่รับเหตุการณ์  เช่น ถ้าเราต้องการติดต่อ A กับ B โดย A จะเป็นผู้สร้างเหตุการณ์  และ B สนใจเหตุการณ์ที่เกิดขึ้น (B จะได้รับการแจ้งเตือนเมื่อ A)   
           เมื่อจะให้ counter ดูเหตุการณ์ของ time เราทำอย่างนี้ค่ะ Click connection mode  ->  เลือก time ->  เลือก counter  เมื่อหน้าต่าง Connection Wizard ปรากฏขึ้น ขั้นแรกให้เลือก Event ที่ time สร้างก่อน ตามด้วย method ที่ใช้ในการจัดการ event นั้นตามรูป


  
    Click Next>
         ขั้นต่อมาให้เลือก operation ที่จะทำเมื่อ event  ที่เลือกไว้เกิดขึ้น  เราจะให้เรียก method ชื่อ increment()  ตามรูปด้านล่าง

 
      เสร็จแล้วเมื่อกด Finished  netbean จะสร้าง code ให้เราโดยอัตโนมัติ
     
          Click ขวาที่ time ใน inspector  ->  ที่ Properties ใน interval ในหน้าต่างให้เปลี่ยนค่าจาก  5 เป็น 1 เพื่อให้ time property เปลี่ยนทุก  1 วินาที
 


                          Start, Stop & Reset
                   ต่อไปให้ลาก button ใหม่มา 3 button ตั้งชื่อว่า Start , Stop และ Reset
 ใช้ Connection mode เชื่อม button ทั้ง 3 กับ  counter   โดยสำหรับทุกปุ่ม method ที่ใช้จัดการคือ actionPerformed()
-ระหว่าง Start button กับ  counter
    Operation ที่จะทำเมื่อ event  ที่เลือกไว้เกิดขึ้น ( Specific Target Opertion) คือเรียก method start()
-ระหว่าง Stop button กับ  counter
    Operation ที่จะทำเมื่อ event  ที่เลือกไว้เกิดขึ้น ( Specific Target Opertion) คือเรียก method stop()

-ระหว่าง Reset button กับ  counter
    Operation ที่จะทำเมื่อ event  ที่เลือกไว้เกิดขึ้น ( Specific Target Opertion) คือเรียก method reset()
เรียบร้อยแล้ว code ทั้งหมดที่ netBean สร้างให้จะเป็นตามนี้

ในที่สุด โปรแกรมก็รันได้แล้วค่ะ

 
       เมื่อรันโปรแกรมจะเริ่มนับเลยนะค่ะ แต่ถ้าเพื่อนๆ ไม่อยากให้โปรแกรมนับ จนกว่าจะกดปุ่ม start ก็เติม code ที่ MyForm()  constructor อย่างนี้เลยค่ะ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น