วันจันทร์ที่ 18 สิงหาคม พ.ศ. 2557

การแสดงค่าเริ่มต้น ของ Combo Box (MS Access)

Combo Box ใน MS Access มีประโยชน์สำหรับเลือกรายการ แล้วนำไปค้นหาข้อมูล เช่น อาจจะนำมาแสดงใน subForm ดังตัวอย่างข้างล่าง


ในกรณีข้างต้น เป็นการกำหนด Query ใน Row Source ของ Combo Box ให้เลือกข้อมูลจากตาราง โดยมีการรวมฟิลด์ในตาราง เสียใหม่ โดยใช้ Query ดังนี้

SELECT tblTeachers.tchr_idCardNum, [title] & [fname] & " " & [lname] AS name, tblTeachers.fname FROM tblTeachers ORDER BY tblTeachers.fname;

ปัญหาอย่างหนึ่ง ที่เกิดขึ้นก็คือ เมื่อเปิดฟอร์มมาครั้งแรก จะไม่มีข้อมูลใน Combo Box และใน Subform ก็จะไม่มีข้อมูลใด ๆ

ดังนั้น จึงต้องไปกำหนดค่า Default Value เสียก่อน แต่จะไม่สามารถพิมพ์ข้อความเข้าไปตรง ๆ ได้ เนื่องจากเป็นการใช้ Query ไม่ใช่เป็นการพิมพ์ค่าเข้าไปเองตรง ๆ ดังนั้นจึงต้องอ้างอิงค่าจากตัวของมันเอง โดยใช้ itemData ซึ่งเป็น Property ของ Combo Box ทั้งนี้ต้องระบุตำแหน่งแถวรายการข้อมูลที่้ต้องการให้แสดง (ตำแหน่งแถว เริ่มต้นที่ 0) เช่น
             =[cboTeachers].[ItemData](0)


เมื่อเปิดฟอร์มครั้งแรก ฟอร์มจะไม่ว่างเปล่า แต่จะนำข้อมูลมาแสดงให้เห็น ดังตัวอย่าง



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

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