Bài giảng Lập trình .Net với VB.NET - Chương 6: Sử dụng Winform - Phan Trọng Tiến

ppt 35 trang hapham 3870
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình .Net với VB.NET - Chương 6: Sử dụng Winform - Phan Trọng Tiến", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_lap_trinh_net_voi_vb_net_chuong_6_su_dung_winform.ppt

Nội dung text: Bài giảng Lập trình .Net với VB.NET - Chương 6: Sử dụng Winform - Phan Trọng Tiến

  1. Chương 6: Sử dụng Winform Phan Trọng Tiến Department of Software Engineering Hanoi University of Agriculture Office location: 3rd floor, Administrative building Office phone: 8276346, Ext: 132 Email:phantien84@gmail.com Ch6 - Sử dụng Winform 1
  2. Nội dung chính 1. Tổng quan 2. Tại sao sử dụng Windows Forms 3. Cấu trúc Windows Forms 4. Sử dụng Windows Forms 5. Demo: Thực hiện Windows Forms 6. Sử dụng các Control 7. Demo: Thực thi chức năng kéo và thả 8. Thừa kế của Windows Forms 9. Demo: Sử dụng thừu kế Windows Forms Ch6 - Sử dụng Winform 2
  3. Mục đích của chương n Chương này cung cấp sinh viên kiến thức cần thiết để tạo các ứng dụng Winform. n Sau bài này sinh viên có thể: ¡ Mô tả các lợi ích của Windows Forms ¡ Sử dụng các thuộc tính mới và các phương thức của Windows Forms ¡ Viết code cho các sự kiện điều khiển ¡ Sử dụng các control mới và các control cải tiến ¡ Thêm và chỉnh sửa menu ¡ Tạo một form được thừa kế từ form khác Ch6 - Sử dụng Winform 3
  4. 1. Tổng quan n Bạn sẽ nắm được các đặc điểm có sẵn trong Windows Forms, cách thay đổi các form và control, và các thuộc tính, các phương thức, các sự kiện. n Bạn sẽ học cách tạo một vài dạng hộp thoại chuẩn của Windows. n Nắm được tính thừa kế, cho phép bạn sử dụng kỹ thuật lập trình hướng đối tượng vào các form của bạn. Ch6 - Sử dụng Winform 4
  5. 2. Tại sao sử dụng Windows Forms n Có tập hợp các n Hỗ trợ khả năng cotrol phong phú truy cập qua các n Nhiều kiểu giao thuộc tính của diện control n Hỗ trợ cải tiến việc n Hỗ trợ thừa kế in ấn n Các đối tượng có n Hỗ trợ cải tiến về thể cải tiến đồ họa – GDI+ n Thuận lợi cho thiết kế forms Ch6 - Sử dụng Winform 5
  6. 3. Cấu trúc của Windows Forms n Phân cấp các lớp của Windows Forms n Sử dụng lớp Windows.Forms.Appication n Nghiên cứu Code Behind của Windows Forms Ch6 - Sử dụng Winform 6
  7. Phân cấp các lớp của Windows Forms Ch6 - Sử dụng Winform 7
  8. Sử dụng lớp Windows.Forms.Application n Bắt đầu và kết thúc ứng dụng Sub Main( ) Dim frmFirst as New Form1( ) frmFirst.Show( ) ‘Hiển thị form đầu tiên Application.Run( ) ‘Cho phép ứng dụng tiếp tục sau khi form đóng End Sub n Dùng phương thức DoEvents n Thiết lập thông tin và truy vấn thông tin ứng dụng Dim strAppPath As String strAppPath = Application.StartupPath ‘lấy đường dẫn chứa nơi cài file chạy Ch6 - Sử dụng Winform 8
  9. Nghiên cứu Code Behind của Windows Forms n Imports ¡ Truy cập các chức năng trong namespace tham chiếu trong assemblies Imports Winforms = System.Windows.Forms n Class ¡ Thừ kế từ System.Windows.Forms.Form ¡ Contructor – Sub New() ¡ Initializer – Sub InitializeComponent() ¡ Detructor – Sub Dispose() Ch6 - Sử dụng Winform 9
  10. 4. Sử dụng Windows Forms n Sử dụng Form Properties n Sử dụng Form Methods n Sử dụng Form Events n Điều khiển sự kiện n Tạo Form MDI n Sử dụng các dạng hộp thoại chuẩn Ch6 - Sử dụng Winform 10
  11. Sử dụng Form Properties n Kích trên Form hoặc Control sẽ có hộp thoại Form Properties tương ứng Ch6 - Sử dụng Winform 11
  12. Sử dụng Form Properties n DialogResult n Font n Opacity n MaximumSize và MinimumSize n TopMost n AcceptButton và CancelButton Ch6 - Sử dụng Winform 12
  13. Sử dụng Form Methods n CenterToScreen và CenterToParrent n Close n Show và ShowDialog Ch6 - Sử dụng Winform 13
  14. Sử dụng Form Events n Activated và DeActivate ¡ Activated là xảy ra khi Form được kích hoạt hoặc ng dùng tương tác ¡ DeActive là xảy ra khi Form mất focus. n FormClosing ¡ Xảy ra khi Form đang chuẩn bị đóng. n FormClosed ¡ Xảy ra sau sự kiện Closing và trước Dispose n MenuStart và MenuComplete ¡ Xảy ra khi menu nhận và mất focus. Ch6 - Sử dụng Winform 14
  15. Điều khiển sự kiện n Điều khiển nhiều sự kiện với một thủ tục Private Sub AddOrEditButtonClick(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles btnAdd.Click, btnEdit.Click n Sử dụng AddHandler ¡ Là từ khóa dùng để add các sự kiện cho Form hoặc cho Control. Private Sub NavigateBtnClick(ByVal sender As System.Object, ByVal e As System.EventArgs) MessageBox.Show("Moving record") End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load AddHandler btnNext.Click, AddressOf NavigateBtnClick End Sub Ch6 - Sử dụng Winform 15
  16. Demo dùng sự kiện n Tạo một ứng dụng dạng Winform hiển thị các thông tin trong của sổ n Code cho các sự kiện ¡ Form1_Activated Debug.WriteLine("Activated") ¡ Form1_Closed Debug.WriteLine("Closing") ¡ Form1_Deactivate Debug.WriteLine("Deactivated") ¡ Form1_SizeChanged Debug.WriteLine("Size changed") Ch6 - Sử dụng Winform 16
  17. Tao Form MDI n Tạo Form cha ¡ Bạn có thể đặt thuộc tính IsMdiContainer ¡ Hoặc code ở sự kiện Form_Load Me.IsMdiContainer = True Me.WindowState = FormWindowState.Maximized n Tạo các Form con Dim doc As Form2 = New Form2( ) doc.MdiParent = Me doc.Show( ) n Truy cập các Form con n Sắp xếp các Form con Ch6 - Sử dụng Winform 17
  18. Sử dụng các dạng hộp thoại chuẩn n MsgBox If MsgBox("Continue?", MsgBoxStyle.YesNo + MsgBoxStyle.Question,"Question")_ = MsgBoxResult.Yes Then End If n Lớp MessageBox If MessageBox.Show("Continue?", "Question", _ MessageBoxButtons.YesNo, MessageBoxIcon.Question) _ = DialogResult.Yes Then End If n InputBox Ch6 - Sử dụng Winform 18
  19. 5. Demo: Thực hiện Windows Forms n Bạn sẽ học cách dùng Properties và Methods của Window Form, bao gồm tạo cả form riêng, độ trong suốt của form, và thanh cuộn tự động cho form. Ch6 - Sử dụng Winform 19
  20. 6. Sử dụng các control n Các control mới n Sử dụng Properties của Control n Sử dụng Methods của Control n Tạo Menus n Cung cấp Help cho người sử dụng n Thực hiện chức năng Kéo – Thả Ch6 - Sử dụng Winform 20
  21. Các control mới n CheckedListBox n LinkLabel n Spliter n ToolTip n NotifyIcon Ch6 - Sử dụng Winform 21
  22. Sử dụng Properties của Control n Đặt vị trí Control ¡ Anchor ¡ Location n Thuộc tính Text Button1.Text = "Click Me" Ch6 - Sử dụng Winform 22
  23. Sử dụng Methods của Control n BringToFront và SendToBack Button1.BringToFront( ) Button2.SendToBack( ) n Focus TextBox1.Focus( ) TextBox1.SelectAll( ) Ch6 - Sử dụng Winform 23
  24. Tạo Menus n Các lớp Menu n Tạo Menu lúc thiết kế ¡ Sử dụng Menu Designer n Tạo Menu lúc chạy Dim mnuMain As New MainMenu( ) Dim mnuItem1 As New MenuItem, mnuItem2 As New MenuItem( ) mnuItem1.Text = "File" mnuMain.MenuItems.Add(mnuItem1) mnuItem2.Text = "Exit" mnuMain.MenuItems(0).MenuItems.Add(mnuItem2) AddHandler mnuItem2.Click, AddressOf NewExitHandler Menu = mnuMain Ch6 - Sử dụng Winform 24
  25. Cung cấp Help cho người sử dụng n Control ErrorProvider ¡ Icon lỗi sẽ xuất hiện ở control kế tiếp, và message xuất hiện giống như ToolTip khi chuột di chuyển qua Icon. ¡ Được sử dụng kiểm tra dữ liệu đầu vào. n Control HelpProvider ¡ Gắn các file trợ giúp dạng *.chm, *.hlp, *.html ¡ Control cung cấp thông tin trợ giúp qua thuộc tính HelpStringCh6 - Sử dụng Winform hoặc HelpTopic 25
  26. Demo: Sử dụng Controls n Bin sẽ học cách bố trí các thuộc tính của control Button. n Thực thi các sự kiện cho control. n Cuối cùng, cung cấp các trợ giúp người sử dụng qua control HelpProvider và ToolTip và cách lập trình tạo context menu. Ch6 - Sử dụng Winform 26
  27. Thực thi chức năng Kéo – Thả n Sử lý đầu tiên ¡ Dùng phương thức DoDragDrop trong sự kiện MouseDown của control kéo. n Thay đổi Icon kéo ¡ Thiết lập thuộc tính AllowDrop thành True ¡ Thiết lập thuộc tính Effect của DragEventsArg trong sự kiện DragOver của control thả. n Thả dữ liệu ¡ Dùng phương thức Data.GetData để truy cập Data Ch6 - Sử dụng Winform 27
  28. Demo: Thực thi chức năng Kéo – Thả n Thực thi chức năng kéo thả qua một ví dụ đơn giản. Ch6 - Sử dụng Winform 28
  29. 8. Thừa kế của Windows Forms n Tại sao thừa kế từ một Form n Tạo một Form cơ sở (Form Base) n Tạo một Form được thừa kế n Thay đổi Form Base Ch6 - Sử dụng Winform 29
  30. Tại sao thừa kế từ một Form n Một Form là một class, vì vậy nó có thể dùng thừa kế n Các ứng dụng sẽ có một giao diện và cách cư sử chuẩn. n Các thay đổi ở form cơ sở sẽ tác động tới các form. n Các ví dụ: ¡ Các form Wizard ¡ Các form Logon Ch6 - Sử dụng Winform 30
  31. Tạo một Form cơ sở (Form Base) n Lên kế hoạch Form Base một cách cẩn thận n Tạo form Base như form thông thường n Thiết lập các thuộc tính truy cập cho các control ¡ Private – Control chỉ truy cập trong form Base ¡ Protected – control chỉ được truy cập trong các form kế thừa ¡ Public – Control được truy câp trong bất kỳ module. n Thêm từ khóa Overridable tới các Method một cách thích hợp n Build Solution choCh6 - Sửform dụng Winform Base 31
  32. Tạo form được thừa kế n Đảm bảo form base đã được hoàn thành n Tham chiếu tới Assembly n Tạo form mới được thừa kế n Thay đổi thuộc tính khi cần thiết n Viết chồng các Method hoặc Event khi có yêu cầu Ch6 - Sử dụng Winform 32
  33. Thay đổi Form Base n Thay đổi Form Base ¡ Các thay đổi sẽ tác động tới các form kế thừa khi Rebuilt n Kiểm tra các form được kế thừa ¡ Kiểm tra các thay đổi trước khi rebuilt lại ứng dụng ¡ Kiểm tra lại sau khi rebuilt lại ứng dụng Ch6 - Sử dụng Winform 33
  34. 9. Demo: Sử dụng thừa kế Windows Forms n Tạo một lớp Base phục vụ cho mục đích thừa kế n Viết chồng các Propety, Method của các control form base n Thay đổi form base sau khi nó đã được thừa kế. Ch6 - Sử dụng Winform 34
  35. Tổng kết n Các lợi ích Windows Forms? n Lớp ContainerControl là lớp cơ sở cho các control khác đúng hay sai? n Viết code để truy cập tới đường dẫn file chạy ứng dụng n Viết code để gọi btnOK khi người sử dụng ấn phím Enter. n Liệt kê các control cung cấp trợ giúp cho người sử dụng n Viết code để tạo một menu Help với một menu con About lúc chạy chương trình Ch6 - Sử dụng Winform 35