1. Trang chủ
  2. » Luận Văn - Báo Cáo

trình bày từng bước thao tác kéo thả đối tượng drag and drop

21 1,7K 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 378 KB

Nội dung

Hai ô Textbox, trong đó Textbox1 dùng để hiển thị thông tin chi tiết của các kiểu dữ liệu mà ta chọn bên listbox khi ta kích chọn trong Listbox một tên loại kiểu dữ liệu thì ô textbox1

Trang 1

Môn: Công Nghệ Net

ĐỀ TÀI: Trình bày từng bước thao tác kéo thả đối tượng

Drag And Drop

Giảng viên hướng dẫn: Trịnh Đức Tính Sinh viên thực hiện: Nguyễn Đình Hải Quân Lớp: C10T1

MSSV: 100157

Trang 2

Mục Lục

Đà Nẵng, Ngày 14 tháng 11 năm 2012 1 Tìm hiểu chương trình:

Chương trình gồm một ô Listbox để hiển thị các thông tin của các kiểu dữ liệu Hai ô Textbox, trong đó Textbox1 dùng để hiển thị thông tin chi tiết của các kiểu dữ liệu mà ta chọn bên listbox khi

ta kích chọn trong Listbox một tên loại kiểu dữ liệu thì ô textbox1 sẽ hiển thị hình ảnh loài hoa mà

ta chọn 7

Trang 3

I Tổng Quan

Drag-Drop là đề cập đến truyền dữ liệu trong đó một con chuột hoặc thiết bị trỏ khác

được sử dụng để xác định cả các nguồn dữ liệu và đích của nó

Trong một hoạt động kéo và thả điển hình, người sử dụng lựa chọn các đối tượng được chuyển giao bằng cách di chuyển con trỏ chuột vào nó và giữ một trong hai nút trái hoặc nút phải một số khác được chỉ định cho mục đích này

Trong khi tiếp tục giữ nút, người dùng bắt đầu chuyển giao bằng cách kéo các đối tượng đến đích của nó và thả

Drag-Drop cung cấp chính xác các chức năng tương tự như sao chép vào clipboard và

dán vào đối tượng chấp nhận hoạt động này Trong thực tế, nếu một ứng dụng hỗ trợ sao chép và dán vào clipboard, thì việc thiết kế một chương trình có chức năng kéo thả là rất cần thiết để hỗ trợ người dùng

II Ứng Dụng Drag-Drop

1 Xây dựng chương trình kéo thả hình ảnh

Giao diện như sau:

Trang 4

Tìm hiểu chương trình:

Chương trình gồm một ô listbox để hiển thị các thông tin tên hoa Hai ô Picturebox, trong đó Picturebox1 dùng để hiển thị hình ảnh khi ta kích chọn trong Listbox một tên loại hoa thì ô Picturebox1 sẽ hiển thị hình ảnh loài hoa mà ta chọn

Ô Picturebox2 được tạo ra nhằm mục đích để cho ta thấy việc kéo thả từ PictureBox1 sang PictureBox2 và ngược lại

Thiết kế chương trình:

Các thuộc tính thay đổi nhau sau:

- Listbox: thuộc tính name là lbldanhsach

- Picturebox1: Thuộc tính name là hinhbentrai

- Picturebox2: Thuộc tính name là hinhbenphai

Viết mã:

Tạo thủ tục cho lbldanhsach thủ tục này có tác dụng khi người dùng kích vào thì

sẽ hiển thị các hình ảnh theo list đã được sắp xếp sẵn.

PrivateSub lbldanhsach_SelectedIndexChanged(ByVal sender As System.Object, _ByVal e As System.EventArgs) Handles lbldanhsach.SelectedIndexChanged

SelectCase lbldanhsach.SelectedIndex

Trang 5

hinhbentrai.AllowDrop = True' Luôn chấp nhận khi hình được thả vào!

hinhbenphai.AllowDrop = True' Luôn chấp nhận khi hình được thả vào!

If e.Button = Windows.Forms.MouseButtons.Left Then

Dim pic As PictureBox = CType(sender, PictureBox)

' Gọi sự kiện kéo thả

IfNot pic.Image IsNothingThen

pic.DoDragDrop(pic.Image, DragDropEffects.Move)

EndIf

EndIf

EndSub

Trang 6

Tạo thủ tục Picturebox_DragEnter thủ tục này có tác dụng thực hiện kiểm tra và thả hình ảnh.

PrivateSub PictureBox_DragEnter(ByVal sender As System.Object, ByVal e As _System.Windows.Forms.DragEventArgs) Handles hinhbentrai.DragEnter, _

hinhbenphai.DragEnter

' Kiểm tra việc kéo thả có đúng không?

' Nếu việc kéo thả không đúng thì sẽ ko thực hiện việc thả

Tạo thủ tục PictureBox_Dragdrop thủ tục này có tác dụng xử lý sự kiện kéo thả

và điều khiên hình hình trong Picturebox.

PrivateSub PictureBox_DragDrop(ByVal sender As System.Object, ByVal e As _System.Windows.Forms.DragEventArgs) Handles hinhbentrai.DragDrop, _

hinhbenphai.DragDrop

'Xử lý sự kiện DragDrop, và điều khiển PictureBox vừa chọn

' Hiển thị hình ảnh trong PictureBox đã chọn

Dim pic As PictureBox = CType(sender, PictureBox)

pic.Image = CType(e.Data.GetData(DataFormats.Bitmap), Bitmap)

If sender Is hinhbentrai Then

Trang 7

2. Xây Dựng chương trình kéo thả hình ảnh

Giao diện như sau:

Tìm hiểu chương trình:

Chương trình gồm một ô Listbox để hiển thị các thông tin của các kiểu dữ

liệu Hai ô Textbox, trong đó Textbox1 dùng để hiển thị thông tin chi tiết của các kiểu dữ liệu mà ta chọn bên listbox khi ta kích chọn trong Listbox một tên loại kiểu dữ liệu thì ô textbox1 sẽ hiển thị hình ảnh loài hoa mà ta chọn

Ô Textbox2 được tạo ra nhằm mục đích để cho ta thấy việc kéo thả từ Textbox1 sang Textbox2 và ngược lại

Thiết kế chương trình:

Các thuộc tính thay đổi nhau sau:

Listbox: có name là lbldanhsach

Textbox1: có name là txtnguon

Textbox2: có name là txtdich

Trang 10

PrivateSub txtnguon_MouseDown(ByVal sender AsObject, _

ByVal e As System.Windows.Forms.MouseEventArgs) Handles _

PrivateSub thutucchapnhan_DragDrop(ByVal sender AsObject, _

ByVal e As System.Windows.Forms.DragEventArgs) Handles _

txtdich.DragDrop

txtdich.Text = e.Data.GetData(DataFormats.Text).ToString

'Lấy dữ liệu txtdich

txtnguon.Text = ""'khi chọn txtdich thì txtnguon sẽ

'rỗng để khi drop sẽ ko bị chồng lên nhau

EndSub

Tạo thủ tục có tên thutucthadulieu_DragEnter thủ tục này có tác dụng thả dữ liệu

PrivateSub thutucthadulieu_DragEnter(ByVal sender As _

System.Object, ByVal e As System.Windows.Forms.DragEventArgs)_

Handles txtdich.DragEnter

e.Effect = DragDropEffects.Move

Trang 11

Chạy chương trình:

Chúng ta nhấn F5 để chạy chương trình và chọn một tên kiểu dữ liệu trong Listbox để hiển thị ảnh, sau đó thực hiện kéo thả các thông tin được hiển thị đó sang textbox2

Trang 12

3 Xây dựng chương trình kéo thả các nút

Giao diện như sau:

Tìm hiểu chương trình

Chương trình được tạo gồm hai đối tượng Tree View, tác dụng của chương trình này sẽ

mô tả cho Chúng ta thấy ứng dụng của việc kéo thả các nút hay các đối tượng dữ liệu trong máy tính, được thể hiện dưới dạng cây thư mục để kéo thả dữ liệu từ cây thư mục nguồn sang cây thư mục đích

Thiết kế chương trình:

Các thuộc tính thay đổi nhau sau:

- TreeView1: Thuộc tính name là tvwLeft

- TreeView2: Thuộc tính name là tvwRight

Trang 13

Đặt giá trị của tvwLeft ở thuộc tính Nodes như hình sau:

Trang 14

Đặt giá trị của tvwRight ở thuộc tính Nodes như hình sau:

Viết mã:

Tạo thủ tục TreeView_DragDrop thủ tục này có tác dụng khởi tạo việc kéo thả.

PrivateSub TreeView_DragDrop(ByVal sender As System.Object, _

ByVal e As System.Windows.Forms.DragEventArgs) Handles _

tvwLeft.DragDrop, tvwRight.DragDrop

' Khởi tạo biến với các nút kéo để sử dụng

Dim OriginationNode As TreeNode = _

CType(e.Data.GetData("System.Windows.Forms.TreeNode"), TreeNode)

CType(sender, TreeView).GetNodeAt(pt)

If DestinationNode IsNotNothingThen

Trang 15

IfNot DestinationNode.TreeView Is OriginationNode.TreeView Then

DestinationNode.Nodes.Add(CType(OriginationNode.Clone, TreeNode)) DestinationNode.Expand()

PrivateSub thadulieu_DragEnter(ByVal sender As System.Object, ByVal e As _

System.Windows.Forms.DragEventArgs) Handles tvwLeft.DragEnter, _

PrivateSub thutucnhan_ItemDrag(ByVal sender As System.Object, ByVal e As _

System.Windows.Forms.ItemDragEventArgs) Handles tvwLeft.ItemDrag, _

tvwRight.ItemDrag

If e.Button = Windows.Forms.MouseButtons.Left Then

'Gọi hoạt động kéo thả

DoDragDrop(e.Item, DragDropEffects.Move)

EndIf

EndSub

Chạy chương trình:

Chúng ta nhấn F5 để chạy chương trình và chọn một giá trị của một trong hai ô

TreeView để thực hiện việc di chuyển các nút

Trang 16

4 Xây dựng chương trình kéo thả các đối tượng có trên form

Giao diện như sau:

Các thuộc tính thay đổi nhau sau:

- Button: có thuộc tính name là Button1

- Label: có thuộc tính name là Label1

- Textbox: có thuộc tính name là Texbox1

- Listbox: có thuộc tính name là Listbox1

Trang 17

Viết mã:

Đầu tiên ta khai báo biến Dim dichuyen As Point được để dưới (PublicClass

cac_dangkeothakhac)

Biến này có tác dụng xác định toạ độ khi sử dụng

Tạo thủ tục Button1_MouseDown thủ tục này có tác dụng xác định vị trí đối tượng Button

PrivateSub Button1_MouseDown(ByVal sender AsObject, _

ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button1.MouseDown

If e.Button = Windows.Forms.MouseButtons.Left Then

PrivateSub Button1_MouseMove(ByVal sender AsObject, _

ByVal e As System.Windows.Forms.MouseEventArgs) Handles Button1.MouseMove

If e.Button = Windows.Forms.MouseButtons.Left Then

Button1.Location += e.Location - dichuyen

EndIf

EndSub

Cũng tương tự ta viết thủ tục cho Label, Textbox, Listbox gồm các thủ tục như của

Button1 như sau:

Tạo thủ tục Label1_MouseDown thủ tục này có tác dụng xác định vị trí đối tượng Label

PrivateSub Label1_MouseDown(ByVal sender AsObject, _

ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseDown

If e.Button = Windows.Forms.MouseButtons.Left Then

dichuyen = e.Location

EndIf

EndSub

Trang 18

Tạo thủ tục Label1_MouseMove thủ tục này có tác dụng di chuyển đối tượng

Label1 sang vị trí mới

PrivateSub Label1_MouseMove(ByVal sender AsObject, _

ByVal e As System.Windows.Forms.MouseEventArgs) Handles Label1.MouseMove

If e.Button = Windows.Forms.MouseButtons.Left Then

Label1.Location += e.Location - dichuyen

Trang 19

III Kết Luận

Với những kiến thức đã học, với sự giúp đỡ tận tình của các anh chị trên diễn đàn câu lạc bộ Vb, cùng giáo viên bộ môn Công nghệ Net em đã thu thập được những kinh nghiệm hết sức quý báu

Kết hợp cùng với kiến thức đã được trang bị trên lớp em đã có một số suy nghĩ nhằm hoàn thiện đề tài đã giao

Tuy nhiên với trình độ thực tiễn còn hạn chế và một số khó khăn gặp phải trong lúc thực hiện đề tài nên cũng không thể tránh khỏi những thiếu sót em rất mong nhận được sự ý kiến đóng góp từ thầy đề đề tài của em được hoàn thiện hơn

Em xin chân thành cảm ơn thầy Trịnh Đức Tính đã hướng dẫn cho em hoàn thành đồ án này Kính chúc thầy sức khoẻ dồi dào và đạt được nhiều thành tích trong công việc

Đà Nẵng, ngày 14 tháng 11 năm 2012

Sinh viên thực hiện

Nguyễn Đình Hải Quân

Trang 20

IV Đánh giá và nhận xét của giáo viên bộ môn

Trang 21

V Tài liệu tham khảo

Bài báo cáo có sử dụng một số tài liệu ở các nguồn sau:

www. caulacbovb com

www diendan.congdongcviet.com

www msdn.microsoft.com

Ngày đăng: 08/03/2014, 01:26

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w