Sử dụng điều khiển PictureBox
Đ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à ...
Đ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:
![](/pictures/picfullsizes/2018/05/24/gka1527153519.jpg)
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 Sub cmdHienThi_Click()On Error GoTo errpicViewer.Picture = LoadPicture(txtTenFile.Text)Exit Suberr:MsgBox "File này không tồn tại hoặc có lỗi !", vbCritical, "Lỗi"End Sub'/// 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 khi Form bị 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ào Form bằng lệnh: Me.PaintPicture picViewer.Picture,0,0 (Hiểu là: Vẽ ảnh trong picturebox vào Form, bắt đầu từ toạ độ 0,0).