ใช้ ScrollBar เป็นอุปกรณ์อินพุต
โดยปกติแล้วแถบเลื่อนจะใช้กับกล่องข้อความหรือหน้าต่าง แต่บางครั้งก็สามารถใช้เป็นอุปกรณ์ป้อนข้อมูลได้เช่นกัน เนื่องจากตัวควบคุม ScrollBar ระบุตำแหน่งปัจจุบันตามสัดส่วน จึงสามารถใช้เพียงอย่างเดียวในการควบคุมอินพุตโปรแกรม เช่น การควบคุมระดับเสียงหรือการปรับสีของภาพ ตัวควบคุม HScrollBar (แนวนอน) และ VScrollBar (แนวตั้ง) มีความเป็นอิสระและมีชุดของเหตุการณ์ คุณสมบัติ และวิธีการของตัวเอง ตัวควบคุม ScrollBar จะแตกต่างจาก ScrollBar ภายในที่แนบมากับกล่องข้อความ, กล่องรายการ, ComboBox หรือแบบฟอร์ม MDI (ฟอร์มกล่องข้อความและ MDI มีคุณสมบัติ ScrollBars ซึ่งสามารถเพิ่มหรือลบ ScrollBars ที่แนบมากับตัวควบคุมได้)
พรอมต์อินเทอร์เฟซ Windows รองรับการควบคุม Slider เป็นอุปกรณ์อินพุตแทน ScrollBar สำหรับตัวอย่างการควบคุม Slider โปรดดูที่แผงควบคุม Windows 95 Visual Basic รุ่น Professional และ Enterprise มีตัวควบคุม Slider สไตล์ Windows95
สำหรับ ข้อมูลเพิ่มเติมเกี่ยวกับตัวควบคุม ScrollBar ดูบทที่ 7 "การใช้ตัวควบคุมมาตรฐานของ Visual Basic"
ส่วนควบคุมสำหรับการแสดงรูปภาพและกราฟิก
เนื่องจาก Windows เป็นส่วนติดต่อผู้ใช้แบบกราฟิก วิธีการแสดงภาพกราฟิกบนอินเทอร์เฟซของแอปพลิเคชันจึงมีความสำคัญมาก VisualBasic มีตัวควบคุมสี่ตัวเพื่อลดความซับซ้อนในการทำงานที่เกี่ยวข้องกับกราฟิก ได้แก่ ตัวควบคุม PictureBox ตัวควบคุมรูปภาพ ตัวควบคุมรูปร่าง และตัวควบคุมบรรทัด
ตัวควบคุมรูปภาพ รูปร่าง และเส้นบางครั้งเรียกว่าตัวควบคุมกราฟิกแบบน้ำหนักเบา พวกเขาต้องการทรัพยากรระบบน้อยลง ดังนั้น จึงแสดงได้เร็วกว่าตัวควบคุม PictureBox และประกอบด้วยชุดย่อยของคุณสมบัติ วิธีการ และเหตุการณ์ที่มีอยู่ใน PictureBox การควบคุมแต่ละรายการมีจุดประสงค์เฉพาะ
การใช้ตัวควบคุม PictureBox
หน้าที่หลักของตัวควบคุม PictureBox คือการแสดงรูปภาพสำหรับผู้ใช้ รูปภาพที่แสดงจริงจะถูกกำหนดโดยคุณสมบัติรูปภาพ คุณสมบัติ รูปภาพ ประกอบด้วยชื่อไฟล์ (และชื่อเส้นทางเพิ่มเติม) ของรูปภาพที่กำลังแสดง
โปรดทราบว่า วัตถุฟอร์มมีคุณสมบัติรูปภาพด้วย การตั้งค่าคุณสมบัตินี้จะทำให้รูปภาพสามารถแสดงบนพื้นหลังของฟอร์มได้โดยตรง
เมื่อต้องการแสดงหรือแทนที่รูปภาพขณะรันไทม์ ให้ใช้ฟังก์ชัน LoadPicture เพื่อตั้งค่าคุณสมบัติ รูปภาพ ระบุชื่อไฟล์รูปภาพและชื่อเส้นทางเสริม จากนั้นฟังก์ชัน LoadPicture จะจัดการรายละเอียดของการโหลดและการแสดงรูปภาพ
picMain.Picture=LoadPicture(VANGOGH.BMP)
ตัวควบคุม PictureBox มีคุณสมบัติ AutoSize เมื่อคุณสมบัตินี้ถูกตั้งค่าเป็น True PictureBox จะปรับขนาดให้ตรงกับรูปภาพที่แสดงได้โดยอัตโนมัติ ถ้าคุณต้องการใช้ PictureBox โดยตั้งค่าคุณสมบัติ AutoSize เป็น True คุณจะต้องใช้ความระมัดระวังเป็นพิเศษเมื่อออกแบบฟอร์ม รูปภาพจะปรับขนาดโดยไม่คำนึงถึงตัวควบคุมอื่นๆ บนฟอร์ม ซึ่งอาจนำไปสู่ผลลัพธ์ที่ไม่ได้ตั้งใจ เช่น การเขียนทับตัวควบคุมอื่นๆ เมื่อออกแบบ คุณควรตรวจสอบว่าปรากฏการณ์นี้เกิดขึ้นหรือไม่โดยการโหลดแต่ละภาพ
ใช้ PictureBox เป็นคอนเทนเนอร์
ตัวควบคุม Picturebox ยังสามารถใช้เป็นคอนเทนเนอร์สำหรับตัวควบคุมอื่นๆ ได้อีกด้วย เช่นเดียวกับตัวควบคุมเฟรม คุณสามารถเพิ่มตัวควบคุมอื่นๆ ที่ด้านบนของตัวควบคุม PictureBox ตัวควบคุมเหล่านี้จะย้ายเมื่อ PictureBox ย้าย และคุณสมบัติด้านบนและด้านซ้ายจะสัมพันธ์กับ PictureBox และไม่เกี่ยวข้องกับแบบฟอร์ม
การใช้งานทั่วไปของคอนเทนเนอร์ PictureBox คือ ToolBar หรือ StatusBar คุณสามารถวางส่วนควบคุมรูปภาพในคอนเทนเนอร์เหล่านี้เป็นปุ่มหรือเพิ่มป้ายกำกับเพื่อแสดงข้อมูลสถานะได้ ตั้งค่าคุณสมบัติ Align เป็น Top, Bottom, Left หรือ Right จากนั้น PictureBox จะติดอยู่ที่ขอบของแบบฟอร์ม รูปที่ 3.16 แสดง PictureBox ที่มีคุณสมบัติ Align ตั้งค่าไว้ที่ด้านล่าง ประกอบด้วยตัวควบคุมป้ายกำกับสองตัวที่สามารถใช้แสดงข้อมูลสถานะได้
การใช้งานอื่นๆ ของ PictureBox
ตัวควบคุม PictureBox มีหลายวิธีในการทำให้ PictureBox พร้อมใช้งานสำหรับวัตถุประสงค์อื่น ตัวอย่างเช่น: คิดว่า PictureBox เป็นผืนผ้าใบว่างที่คุณสามารถวาดหรือพิมพ์ หรือแสดงข้อความ กราฟิก หรือแม้แต่ภาพเคลื่อนไหวธรรมดาๆ ได้
วิธีการPRintอนุญาตให้ข้อความที่จะส่งออกไปยังตัวควบคุมPictureBoxเหมือนกับว่าข้อความนั้นถูกส่งออกไปยังเครื่องพิมพ์ มีคุณสมบัติแบบอักษรหลายอย่างที่ควบคุมลักษณะของการป้อนข้อความโดยวิธี Print; วิธี Cls จะล้างข้อมูลเอาต์พุต
วิธี Circle, Line, Point และ Pset สามารถใช้ในการวาดภาพกราฟิกใน PictureBox คุณสมบัติเช่น DrawWidth, FillColor และ FillStyle ช่วยให้สามารถปรับแต่งรูปลักษณ์ของกราฟิกได้
ใช้เมธอด PaintPicture เพื่อย้ายรูปภาพภายในตัวควบคุมรูปภาพ และย้ายระหว่างรูปภาพต่างๆ ต่างๆ
การเปลี่ยนแปลงด่วนสามารถสร้างภาพเคลื่อนไหวได้
สำหรับ ข้อมูลเพิ่มเติมเกี่ยวกับตัวควบคุม PictureBox ดูบทที่ 7 "การใช้ตัวควบคุมมาตรฐานของ Visual Basic"
การควบคุมกราฟิกที่มีน้ำหนักเบา
ตัวควบคุมรูปภาพ รูปร่าง และเส้นทั้งหมดถือเป็นตัวควบคุมกราฟิกแบบน้ำหนักเบา กล่าวคือ สนับสนุนเฉพาะชุดย่อยของคุณสมบัติ วิธีการ และเหตุการณ์ของ PictureBox เท่านั้น ดังนั้น พวกเขาจึงต้องการทรัพยากรระบบน้อยลง และโหลดได้เร็วกว่าตัวควบคุม PictureBox
ใช้ตัวควบคุมรูปภาพแทน PictureBox
ตัวควบคุมรูปภาพจะคล้ายกับตัวควบคุม PictureBoxแต่จะใช้เพื่อแสดงรูปภาพเท่านั้น ไม่สามารถใช้เป็นคอนเทนเนอร์สำหรับตัวควบคุมอื่นๆ และไม่สนับสนุนวิธีการขั้นสูงของ PictureBox รูปภาพจะถูกโหลดลงในตัวควบคุมรูปภาพในลักษณะเดียวกับที่โหลดลงใน PictureBox เมื่อออกแบบ ให้ตั้งค่าคุณสมบัติ รูปภาพ เป็นชื่อไฟล์และเส้นทาง และเมื่อรัน ให้ใช้ฟังก์ชัน Loadpicture
ลักษณะการปรับขนาดของตัวควบคุมรูปภาพจะแตกต่างจากของPictureBox มีคุณสมบัติ Stretch และ PictureBox มีคุณสมบัติ AutoSize การตั้งค่าคุณสมบัติ AutoSize เป็น True จะทำให้ PictureBox ปรับขนาดตามรูปภาพ และการตั้งค่าเป็น False จะทำให้รูปภาพถูกตัด (มองเห็นได้เพียงบางส่วนเท่านั้น) เมื่อคุณสมบัติ Stretch ถูกตั้งค่าเป็น False (ค่าเริ่มต้น) ตัวควบคุมรูปภาพสามารถปรับขนาดได้ตามรูปภาพ การตั้งค่าคุณสมบัติ Stretch เป็น True จะปรับขนาดรูปภาพตามขนาดของตัวควบคุมรูปภาพ
ขนาดของชิ้นงานซึ่งอาจบิดเบือนภาพได้
สำหรับ ข้อมูลเพิ่มเติมเกี่ยวกับตัวควบคุมรูปภาพ โปรดดูบทที่ 7 "การใช้ตัวควบคุมมาตรฐานของ Visual Basic"
สร้างปุ่มของคุณเองโดยใช้การควบคุมรูปภาพ
ตัวควบคุมรูปภาพยังรู้จักเหตุการณ์คลิก ดังนั้นจึงสามารถใช้งานได้ทุกที่ที่มีการใช้ CommandButton วิธีนี้ทำให้ง่ายต่อการสร้างปุ่มที่มีรูปภาพแทนที่ชื่อเรื่อง แถบเครื่องมือสามารถสร้างขึ้นในแอปพลิเคชันได้โดยการจัดกลุ่มตัวควบคุมรูปภาพหลายรายการและวางไว้ในแนวนอนที่ด้านบนของหน้าจอ (โดยปกติจะอยู่ใน PictureBox)
ตัวอย่างเช่น สำหรับตัวควบคุมรูปภาพที่ให้ไว้ในตัวอย่าง TestButtons ผู้ใช้สามารถเลือกได้เหมือนกับ CommandButton เมื่อแบบฟอร์มถูกแสดงเป็นครั้งแรก ตัวควบคุมจะแสดงหนึ่งในสามไอคอนการรับส่งข้อมูลจากไลบรารีไอคอนของ Visual Basic แต่ละครั้งที่คุณคลิกตัวควบคุมรูปภาพ ไอคอนที่แตกต่างกันจะปรากฏขึ้น (สำหรับเวอร์ชันที่ใช้งานได้ของตัวอย่างนี้ โปรดดูที่ Button.frm ในแอปพลิเคชันตัวอย่าง Controls.vbp)
หากคุณดูแบบฟอร์มขณะออกแบบ คุณจะเห็นว่าจริงๆ แล้วมีไอคอนทั้งสามไอคอนซ้อนกัน เปลี่ยนคุณสมบัติ Visible ของตัวควบคุมรูปภาพด้านบนเป็น False และรูปภาพถัดไป (หากคุณสมบัติ Visible เป็น True) จะแสดงอยู่ด้านบน
รูปที่ 3.17 แสดงไอคอนจราจร การควบคุมรูปภาพ (Trffc10a.ico)
หากต้องการสร้างเส้นขอบรอบๆ ตัวควบคุมรูปภาพ ให้ตั้งค่าคุณสมบัติ BorderStyle เป็น 1 ซึ่งเป็นเส้นขอบเดียวแบบคงที่
โปรดทราบ ว่าไม่เหมือนกับ CommandButton เมื่อคุณคลิกตัวควบคุมรูปภาพ จะไม่แสดงการกระทำของการกด กล่าวคือ เว้นแต่บิตแมปจะมีการเปลี่ยนแปลงในเหตุการณ์ MouseDown ผู้ใช้จะมองไม่เห็น "ปุ่ม" ที่ถูกกด
สำหรับข้อมูลเพิ่มเติม เกี่ยวกับการแสดงรูปภาพกราฟิกในตัวควบคุมรูปภาพ โปรดดูบทที่ 7 "การใช้ตัวควบคุมมาตรฐานของ Visual Basic"
ใช้การควบคุมรูปร่างและการควบคุมเส้น
ตัวควบคุมรูปร่างและเส้นสามารถใช้เพื่อวาดองค์ประกอบกราฟิกบนพื้นผิวของแบบฟอร์มได้ การควบคุมเหล่านี้ไม่รองรับเหตุการณ์ใดๆ และใช้สำหรับการตกแต่งพื้นผิวเท่านั้น
มีคุณสมบัติหลายประการที่ควบคุมลักษณะที่ปรากฏของตัวควบคุมรูปร่าง ด้วยการตั้งค่าคุณสมบัติรูปร่าง ตัวควบคุมรูปร่างสามารถแสดงเป็นรูปสี่เหลี่ยมผืนผ้า สี่เหลี่ยมจัตุรัส วงรี สี่เหลี่ยมโค้งมน หรือสี่เหลี่ยมโค้งมนได้ การตั้งค่าคุณสมบัติ BorderColor และ FillColor สามารถเปลี่ยนสีได้ และคุณสมบัติ BorderStyle, BorderWidth, FillStyle และ DrawMode จะควบคุมวิธีการวาด ตัวควบคุมเส้นจะคล้ายกับตัวควบคุมรูปร่าง แต่ใช้สำหรับการวาดเส้นเท่านั้น
สำหรับ ข้อมูลเพิ่มเติม เกี่ยวกับตัวควบคุมรูปร่างและเส้น โปรดดูบทที่ 7 "การใช้ตัวควบคุมมาตรฐานของ Visual Basic"
แอพรูปภาพ
แบบฟอร์มที่แสดงในรูปที่ 3.18 ใช้ตัวควบคุมรูปภาพสี่ตัว ตัวควบคุมรูปร่าง ตัวควบคุม PictureBox และตัวควบคุม CommandButton เมื่อผู้ใช้เลือกสัญลักษณ์ไพ่ ตัวควบคุมรูปร่างจะเน้นสัญลักษณ์และแสดงคำอธิบายที่สอดคล้องกันใน PictureBox สำหรับตัวอย่างเวอร์ชันที่ใช้งานได้ โปรดดูที่ Images.frm ในแอปพลิเคชันตัวอย่าง Controls.vbp
ตารางต่อไปนี้แสดงรายการการตั้งค่าคุณสมบัติสำหรับออบเจ็กต์ในแอปพลิเคชัน
-