Điều khiển PictureBox cho phép hiển thị (Load) các file ảnh dạng BMP, ICO, WMF, JPEG, GIF cũng như có các phương thức cho phép ta thực hiện công việc xử lý đồ hoạ trên đó như vẽ đường thẳng, vẽ đường tròn v.v…
Thực hành: Hiển thị file ảnh và vẽ đường thẳng trên PictureBox.
Yêu cầu (Giao diện như hình vẽ): Khi người dùng nhập đường dẫn của file ảnh và click vào nút "Hiển thị" thì hiển thị file ảnh đó trên Picturebox. Còn khi người dùng click vào nút "Vẽ đường thẳng" thì vẽ một đường thẳng.
Giao diện chương trình:
Giao diện và kết quả khi chạy chương trình
Thiết lập giá trị cho các điều khiển: Điều khiển Thuộc tính / Giá trị
PictureBox Name: picViewerAutoRedraw: True TextBox Name: txtTenFile
Command button Name: cmdHienThiCaption: &Hiển thị
Command button Name: cmdVeDuongThangCaption: &Vẽ đường thẳng Viết lệnh:
Form1.frm
'/// Nạp file ảnh và hiển thị trong PictureboxPrivate SubcmdHienThi_Click()On Error GoTo errpicViewer.Picture = LoadPicture(txtTenFile.Text)Exit
Vẽ một đường chéo: cú pháp Line (Cột 1, Hàng 1) – (Cột 2, Hàng 2)Private Sub
cmdVeDuongThang_Click()picViewer.Line (0, 0)-(picViewer.Width, picViewer.Height)End Sub
Ghi chú:
• Thuộc tính AutoRedraw của Picture đặt là true để đảm bảo những gì vẽ trên đó không bị mất đi khiFormbị vẽ lại.
• Phương thức LoadPicture(<Tên file>) trả về cho ta một đối tượng ảnh, đối tượng này có thể gán trả lại cho thuộc tính Picture của điều khiển PictureBox. • Cần phải có cơ chế bắt lỗi như ví dụ trên vì khi nạp ảnh rất có thể có trường
hợp xuất hiện lỗi.
• Có thể đặt thuộc tính AutoResize của Picturebox là True nếu bạn muốn kích thước của Picturebox luôn tự động co giãn bằng với kích thước của ảnh. • Có thể vẽ (copy) ảnh trong Picturebox vàoFormbằng lệnh:Me.PaintPicture
picViewer.Picture,0,0(Hiểu là: Vẽ ảnh trong picturebox vàoForm, bắt đầu từ toạ độ 0,0).