KHOA CNG NGH THNG TIN B MN CC
KHOA CÔNG NGHỆ THÔNG TIN BỘ MÔN CÁC HỆ THỐNG THÔNG TIN Chương 3 Các điều kiển nâng cao n n 2007 Hoàng Hữu Việt – IT Faculty, Vinh University Email: viethh. vinhuni@gmail. com C Programming, 2 nd edition.
Nội dung Hoàng Hữu Việt n n n n 2007 List. Box Checked. List. Box Combo. Box Menu Toolbar MDI Windows Tree. View List. View Bộ môn Các Hệ thống Thông tin 2
List. Box Hoàng Hữu Việt n List. Box n 2007 Cho phép xem và chọn các dòng dữ liệu Bộ môn Các Hệ thống Thông tin 3
List. Box Hoàng Hữu Việt n Các thuộc tính thường dùng n Items: Mảng các dòng trong List. Box. n n n Items[0] = “Cat” Items[1] = “Mouse” Multi. Column: Có/không chia List. Box thành nhiều cột. Multi. Colum = true 2007 Bộ môn Các Hệ thống Thông tin 4
List. Box Hoàng Hữu Việt n Các thuộc tính thường dùng n Selected. Index: Trả về dòng hiện thời được chọn n n 2007 Nếu chọn nhiều dòng, thuộc tính trả về 1 giá trị tuỳ ý của các dòng được chọn. Nếu không chọn dòng nào, thuộc tính trả về giá trị -1. Selected. Indices: Trả về một mảng các chỉ số của các dòng được chọn. Selected. Item: Trả về giá trị dòng được chọn. Selected. Items: Trả về một mảng giá trị các dòng được chọn. Bộ môn Các Hệ thống Thông tin 5
List. Box Hoàng Hữu Việt n Các thuộc tính thường dùng n n Sorted: Có/Không sắp xếp dữ liệu trong List. Box, ngầm định là False. Selection. Mode: Xác định số lượng dòng được chọn của List. Box. n one: Một dòng n Multi: Nhiều dòng Sorted and Selection. Mode 2007 Bộ môn Các Hệ thống Thông tin 6
List. Box Hoàng Hữu Việt n Các phương thức thường dùng n n Get. Selected(index): Trả về giá trị True nếu dòng Index được chọn, ngược lại trả về False. Add: Thêm một dòng vào List. Box n n n Remove. At(row): Xoá dòng ở vị trí row n n list. Box 1. Items. Remove. At(row); Clear: Xoá tất cả các dòng n 2007 list. Box 1. Items. Add(“Cat”); listt. Box 1. Items. Add(“Mouse”); list. Box 1. Items. Clear(); Bộ môn Các Hệ thống Thông tin 7
List. Box Hoàng Hữu Việt n Sự kiện thường dùng n n Ví dụ n 2007 Selected. Index. Changed: Xảy ra khi chọn một dòng. Ngầm định khi nháy đúp ở chế độ thiết kế. Xây dựng Form Bộ môn Các Hệ thống Thông tin 8
List. Box Hoàng Hữu Việt n Ví dụ private void btn. Add_Click(object sender, Event. Args e) { list. Box 1. Items. Add(txt. Input. Text); txt. Input. Clear(); } private void btn. Remove_Click(object sender, Event. Args e) { int row=list. Box 1. Selected. Index; if (row != -1) list. Box 1. Items. Remove. At(row); } private void btn. Clear_Click(object sender, Event. Args e) { list. Box 1. Items. Clear(); } 2007 Bộ môn Các Hệ thống Thông tin 9
List. Box Hoàng Hữu Việt n Bài tập n 2007 Xây dựng Form cho phép di chuyển các dòng giữa 2 List. Box Bộ môn Các Hệ thống Thông tin 10
Checked. List. Box Hoàng Hữu Việt n Checked. List. Box là sự mở rộng của List. Box bằng cách thêm Check. Box ở phía bên trái mỗi dòng n 2007 Có thể chọn nhiều dòng Bộ môn Các Hệ thống Thông tin 11
Checked. List. Box Hoàng Hữu Việt n Các thuộc tính thường dùng n n n Phương thức thường dùng n n Get. Item. Checked(index): Trả về true nếu dòng index được chọn. Sự kiện thường dùng n 2007 Checked. Items: Mảng các giá trị của dòng được đánh dấu Checked. Indices: Mảng các chỉ số dòng được đánh dấu Check. Item. Check: Xảy ra khi dòng được checked hoặc unchecked. Bộ môn Các Hệ thống Thông tin 12
Checked. List. Box Hoàng Hữu Việt n Ví dụ n 2007 Xây dựng Form khi đánh dấu check thì dòng được đưa sang List. Box bên phải, khi bỏ dấu check thì xoá dòng trong List. Box bên phải. Bộ môn Các Hệ thống Thông tin 13
Checked. List. Box Hoàng Hữu Việt n Ví dụ private void my. Checked. List. Box_Load(object sender, Event. Args e) { checked. List. Box 1. Items. Add(“C++ HTP”); } private void checked. List. Box 1_Item. Check(object sender, Item. Check. Event. Args e) { string item = checked. List. Box 1. Selected. Item. To. String(); if ( e. New. Value == Check. State. Checked ) { list. Box 1. Items. Add(item); } else { list. Box 1. Items. Remove(item); } } 2007 Bộ môn Các Hệ thống Thông tin 14
Checked. List. Box Hoàng Hữu Việt n Bài tập n 2007 Xây dựng Form cho phép đánh dấu và chuyển các dòng giữa 2 Checked. List. Box. Bộ môn Các Hệ thống Thông tin 15
Checked. List. Box Hoàng Hữu Việt n Bài tập n Sự kiện cho nút Add của Checked. List. Box private void btn. Add_Click(object sender, Event. Args e) { for (int i = 0; i < checked. List. Box 1. Items. Count - 1; i++) { if (checked. List. Box 1. Get. Item. Checked(i) == true) { // Adds Item i to checked. List. Box 2 string item = checked. List. Box 1. Items[i]. To. String(); checked. List. Box 2. Items. Add(item); // Removes Item i at checked. List. Box 1 ? ? ? checked. List. Box 1. Items. Remove. At(i); } } } 2007 Bộ môn Các Hệ thống Thông tin 16
Combo. Box Hoàng Hữu Việt n Là sự kết hợp của Text. Box và List. Box n Các thuộc tính thường dùng n Drop. Down. Style: Xác định kiểu của Combo. Box. n n n 2007 Simple: Chọn hoặc gõ giá trị Drop. Down (ngầm định): Chọn hoặc gõ giá trị Drop. Down. List: Chỉ cho phép chọn giá trị. Bộ môn Các Hệ thống Thông tin 17
Combo. Box Hoàng Hữu Việt n Các thuộc tính thường dùng n n n Sự kiện thường dùng n 2007 Items: Mảng các dòng trong Combo. Box Selected. Index: Chỉ số dòng được chọn. Nếu không chọn có giá trị -1. Selected. Item: Giá trị dòng được chọn. Sorted: Có/Không sắp xếp dữ liệu trong Combo. Box, ngầm định là false. Selected. Index. Changed: Xảy ra khi chọn 1 dòng. Bộ môn Các Hệ thống Thông tin 18
Combo. Box Hoàng Hữu Việt n Các phương thức thường dùng n Add: Thêm một dòng vào Combo. Box n n n Remove. At(row): Xoá dòng ở vị trí row n n combo. Box 1. Items. Remove. At(row); Clear: Xoá tất cả các dòng trong Combo. Box n 2007 combo. Box 1. Items. Add(“Cat”); combo. Box 1. Items. Add(“Mouse”); combo. Box 1. Items. Clear(); Bộ môn Các Hệ thống Thông tin 19
Combo. Box Hoàng Hữu Việt n Ví dụ n 2007 Xây dựng Form để lấy Font của hệ thống Bộ môn Các Hệ thống Thông tin 20
Combo. Box Hoàng Hữu Việt n Ví dụ private void Combo. Box_Load(object sender, Event. Args e) { Font. Family[] ff = Font. Family. Families; for (int i = 0; i <ff. Length; i++) cbo. Font. Items. Add(ff[i]. Name); for (int i = 8; i <= 72; i++) cbo. Size. Items. Add(i); } private void cbo. Font_Selected. Index. Changed(object sender, Event. Args e) { if (cbo. Font. Text. Trim() == "") return; lb. Display. Font = new Font(cbo. Font. Text, lb. Display. Font. Size); } private void cbo. Size_Selected. Index. Changed(object sender, Event. Args e) { if (cbo. Size. Text. Trim() == "") return; lb. Display. Font = new Font(lb. Display. Font. Name, (float)Convert. To. Double(cbo. Size. Text)); } 2007 Bộ môn Các Hệ thống Thông tin 21
Menu Hoàng Hữu Việt n n Dùng để nhóm các lệnh cùng nhau Menu có thể chứa n n n n 2007 Menu ngang Menu dọc Menu con Các biểu tượng Các phím nóng Các đường phân cách. . . Bộ môn Các Hệ thống Thông tin 22
Menu Hoàng Hữu Việt n Xây dựng menu n Kéo biểu tượng Menu. Strip vào Form Text. Box gõ các dòng menu Thiết kế menu Menu icon 2007 Bộ môn Các Hệ thống Thông tin 23
Menu Hoàng Hữu Việt n Xây dựng menu n n n Gõ các dòng cho menu Đặt tên cho các dòng của menu n Chọn cửa sổ Properties và đặt thuộc tính Name n Tên menu đặt bằng tiền tố mnu (ví dụ: mnu. File, mnu. Edit) Chèn hình ảnh cho các dòng của menu n n n Đặt phím nóng cho các dòng của menu n 2007 Nháy chuột phải và chọn Set Image Chọn Local Resource Import chọn hình ảnh Chọn cửa sổ Properties và đặt thuộc tính Short. Cut. Key Bộ môn Các Hệ thống Thông tin 24
Menu Hoàng Hữu Việt n Các thuộc tính thường dùng n n n 2007 Name: Tên menu được dùng trong mã lệnh. Checked: Có/Không dòng menu xuất hiện checked. Ngầm định là false. Short. Cut. Key: Đặt phím nóng cho menu Show. Shortcut: Có/Không phím nóng hiển thị trên dòng menu. Ngầm định là true. Text: Xuất hiện trên dòng menu. Bộ môn Các Hệ thống Thông tin 25
Menu Hoàng Hữu Việt n Sự kiện thường dùng n n Viết lệnh cho dòng của menu gọi một Form n n n 2007 Click: Xảy ra khi một dòng của menu được click chuột hoặc ấn phím nóng. Ngầm định khi nháy đúp chuột trong chế độ thiết kế. <Tên lớp> <Tên form> = new <Tên lớp>; <Tên Form>. Show(); <Ten Form>. Show. Dialog(); Bộ môn Các Hệ thống Thông tin 26
Menu Hoàng Hữu Việt n Ví dụ n Thiết kế menu Viết các lệnh gọi các Form đã có n name = mnu+text (mnu. Bac 1, mnu. Hinh. Chu. Nhat ) n 2007 Bộ môn Các Hệ thống Thông tin 27
Menu ngữ cảnh Hoàng Hữu Việt n n Menu hiển thị khi nháy chuột phải trên đối tượng của Form hoặc trên Form. Thiết kế menu ngữ cảnh n n n Hiển thị menu ngữ cảnh n n 2007 Kéo điều khiển Menu. Context vào Form Thiết kế các dòng menu ngữ cảnh giống như thiết kế menu Chọn đối tượng hoặc Form Đặt thuộc tính Context. Menu. Strip của đối tượng được chọn là tên của menu ngữ cảnh. Bộ môn Các Hệ thống Thông tin 28
Tool. Bar Hoàng Hữu Việt n n Tool. Bar dùng để chứa các biểu tượng của các chức năng thường được sử dụng trong chương trình. Xây dựng Tool. Bar n n Kéo điều khiển Tool. Strip vào Form Nháy chuột vào biểu tượng phải và chọn đối tượng tạo Tool. Bar n n n 2007 Button: Nút ấn Drop. Down. Button: Nút sổ xuống Separator: Đường phân cách Bộ môn Các Hệ thống Thông tin 29
Tool. Bar Hoàng Hữu Việt n Xây dựng Tool. Bar n Đặt tên cho các nút của Tool. Bar n n n Chèn hình ảnh cho đối tượng của Tool. Bar n n n Nháy chuột phải và chọn Set Image Chọn Local Resource Import chọn hình ảnh Viết mã lệnh n n 2007 Chọn cửa sổ Properties và đặt thuộc tính Name Tên Too. Bar đặt bằng tiền tố tb (ví dụ: tb. New, tb. Open) Gọi từ menu: <tên menu>. Perform. Click() Gọi trực tiếp đối tượng Bộ môn Các Hệ thống Thông tin 30
Toolbar Hoàng Hữu Việt n 2007 Ví dụ xây dựng Tool. Bar và viết lệnh gọi các Form đã có. Bộ môn Các Hệ thống Thông tin 31
MDI Windows Hoàng Hữu Việt n n Một ứng dụng MDI cho phép người dùng thao tác với nhiều cửa sổ ở một thời điểm. Giao diện SDI và MDI Form Single Document Interface (SDI) 2007 Multiple Document Interface (MDI) Bộ môn Các Hệ thống Thông tin 32
MDI Windows Hoàng Hữu Việt Ví dụ MDI Parent và MDI Child n MDI parent MDI child 2007 Bộ môn Các Hệ thống Thông tin 33
MDI Windows Hoàng Hữu Việt n Thuộc tính MDI Parent của Form n n n Is. Mdi. Container: Có/không một Form là Form MDI Parent. Ngầm định là False. Active. Mdi. Child: Trả về Form Child đang được kích hoạt. Thuộc tính MDI Child n n Is. Mdi. Child: Có/không Form là một MDI child (thuộc tính read-only). Mdi. Parent: Chi ra một MDI parent của Form n 2007 <Tên form>. Mdi. Parent = this Bộ môn Các Hệ thống Thông tin 34
MDI Windows Hoàng Hữu Việt n Phương thức thường dùng n Layout. Mdi: Xác định kiểu hiển thị của Form con trong MDI Form. n n 2007 Arrange. Icons: Sắp xếp các biểu tượng dưới MDI Cascade: Sắp xếp các cửa sổ chồng nhau Tile. Horizontal: Sắp xếp cửa sổ theo chiều ngang Tile. Vertical: Sắp xếp cửa sổ theo chiều dọc Bộ môn Các Hệ thống Thông tin 35
MDI Windows Hoàng Hữu Việt n Các kiểu sắp xếp Arrange. Icons 2007 Cascade Bộ môn Các Hệ thống Thông tin 36
MDI Windows Hoàng Hữu Việt n Các kiểu sắp xếp Tile. Horizontal 2007 Tile. Vertical Bộ môn Các Hệ thống Thông tin 37
MDI Windows Hoàng Hữu Việt n Bài tập n 2007 Xây dựng một hệ soạn thảo văn bản theo dạng MDI Form. Bộ môn Các Hệ thống Thông tin 38
Tree. View Hoàng Hữu Việt n n n Hiển thị thông tin theo các nút (node) Các nút cha có các nút con Nút đầu tiên gọi là nút gốc n n n Ấn dấu [+] để mở nút Ấn dấu [-] để thu gọn nút Mỗi nút có hình ảnh kèm theo Nút cha Nút con 2007 Bộ môn Các Hệ thống Thông tin 39
Tree. View Hoàng Hữu Việt n Các thuộc tính thường dùng n n n Check. Boxes: Có/không xuất hiện các checkbox trên các node. Ngầm định là False. Checked: Có/không một Node được check (thuộc tính Check. Boxes phải được đặt là True) Image. List: Chỉ ra danh sách ảnh hiển thị trên các node. n n 2007 Image. List là một mảng các đối tượng ảnh. Tạo danh sách ảnh Image. List bằng cách kéo điều kiển vào Form, nháy chuột phải và chọn Choose Image để thêm các ảnh vào Image. List. Bộ môn Các Hệ thống Thông tin 40
Tree. View Hoàng Hữu Việt n Các thuộc tính thường dùng n Nodes: Mảng các Tree. Nodes trong Tree. View. n n n 2007 Nodes. Add: Bổ sung một node vào cây. Nodes. Clear: Xoá toàn bộ các node trên cây. Nodes. Remove: Xoá một node trên cây và các node con của nó. Selected. Node: Node hiện thời được chọn Full. Path: Chỉ ra đường dẫn đến node bắt đầu từ node gốc. Bộ môn Các Hệ thống Thông tin 41
Tree. View Hoàng Hữu Việt n Các thuộc tính thường dùng n n n n 2007 Selected. Image. Index: Chỉ ra chỉ số ảnh được hiển thị trên node khi node được chọn. Image. Index: Chỉ ra chỉ số ảnh được hiển thị trên node khi node không được chọn (deselected). Text: Text hiển thị của Node. First. Node: Node con đầu tiên của node. Last. Node: Node con cuối cùng của node. Prev. Node: Node con trước node con hiện thời. Next. Node: Node con tiếp theo node hiện thời. Bộ môn Các Hệ thống Thông tin 42
Tree. View Hoàng Hữu Việt n Các phương thức thường dùng n n n Các sự kiện thường dùng n n 2007 Collapse: Thu nhỏ các node con của node. Expand: Mở rộng các node con của node. Expand. All: Mở rộng tất cả các node con. Get. Node. Count: Trả về số lượng node con. After. Select: Xảy ra khi một node được chọn (ngầm định khi nháy đúp chuột ở chế độ thiết kế). Before. Expand: Xẩy ra khi mở rộng một node Bộ môn Các Hệ thống Thông tin 43
Tree. View Hoàng Hữu Việt n 2007 Ví dụ Bộ môn Các Hệ thống Thông tin 44
Tree. View Hoàng Hữu Việt n Ví dụ n n Thêm một tree. View 1 vào Form Thêm một Image. List n n n Nháy chuột phải chọn Set Image để tạo 1 danh sách 3 ảnh cho Image. List Đặt thuộc tính Image. List của tree. View 1 là image. List 1 Tạo một nút và thêm nút vào Tree. View //Tao mot node moi Tree. Node Child. Node = new Tree. Node(text, image. Index, selected. Image. Index); //Them vao nut da co la Parent. Node. Add(Child. Node) 2007 Bộ môn Các Hệ thống Thông tin 45
Tree. View Hoàng Hữu Việt n Ví dụ //Tao nut goc Tree. Node Root. Node = new Tree. Node("Khoa đào tạo", 0, 0); //Them vao nut goc cua tree. View 1. Nodes. Add(Root. Node); //Tao mot nut moi Tree. Node Parent. Node = new Tree. Node("Khoa CNTT", 1, 1); //Them vao Root. Nodes. Add(Parent. Node); //Tao mot nut moi Tree. Node Child. Node = new Tree. Node("Sư phạm Tin", 2, 2); //Them vao Parent. Nodes. Add(Child. Node); //Tao mot nut moi Child. Node = new Tree. Node("Cử nhân Tin", 2, 2); //Them vao Parent. Nodes. Add(Child. Node); //Tao mot nut moi Parent. Node = new Tree. Node("Khoa Toán", 1, 1); //Them vao Root. Nodes. Add(Parent. Node); tree. View 1. Expand. All(); //Mo het cac cay 2007 Bộ môn Các Hệ thống Thông tin 46
Tree. View Hoàng Hữu Việt n Bài tập n 2007 Xây dựng cây Bộ môn Các Hệ thống Thông tin 47
Tree. View Hoàng Hữu Việt n Bài tập n n Thêm một tree. View 1 vào Form Thêm một Image. List n n 2007 Nháy chuột phải chọn Set Image để tạo 1 danh sách 2 ảnh cho Image. List Đặt thuộc tính Image. List của tree. View 1 là image. List 1 Bộ môn Các Hệ thống Thông tin 48
Tree. View Hoàng Hữu Việt n Bài tập private void btn. Add. Root_Click(object sender, Event. Args e) { if (txt. Input. Text. Trim() == "") return; Tree. Node child. Node = new Tree. Node(); child. Node. Text = txt. Input. Text; child. Node. Image. Index = 0; child. Node. Selected. Image. Index = 0; tree. View 1. Nodes. Add(child. Node); txt. Input. Clear(); } private void btn. Add. Child_Click(object sender, Event. Args e) { if (txt. Input. Text. Trim() == "") return; Tree. Node child. Node = new Tree. Node(); child. Node. Text = txt. Input. Text; child. Node. Image. Index = 1; child. Node. Selected. Image. Index = 1; tree. View 1. Selected. Nodes. Add(child. Node); tree. View 1. Selected. Node. Expand(); txt. Input. Clear(); } 2007 Bộ môn Các Hệ thống Thông tin 49
Tree. View Hoàng Hữu Việt n Bài tập private void btn. Remove_Click(object sender, Event. Args e) { Tree. Node current. Node = new Tree. Node(); current. Node = tree. View 1. Selected. Node; if (current. Node. Level > 0) { current. Node. Parent. Nodes. Remove(current. Node); } else { tree. View 1. Nodes. Remove(current. Node); } } 2007 Bộ môn Các Hệ thống Thông tin 50
List. View Hoàng Hữu Việt n Dùng để hiển thị dữ liệu theo các dòng và các cột n n Có thể chọn một hoặc nhiều dòng Có thể hiển thị các biểu tượng theo các dòng n 2007 Ví dụ List. View hiển thị danh sách thư mục TP và các tệp Bộ môn Các Hệ thống Thông tin 51
List. View Hoàng Hữu Việt n Các thuộc tính thường dùng n n 2007 Check. Boxes: Có/không xuất hiện các checkbox trên các dòng dữ liệu (ngầm định là False) Columns: Các cột hiển thị trong chế độ Details. Full. Row. Select: Indicates whether all Sub. Items are hightlighted along with the Item when selected. Grid. Lines: Hiển thị lưới (chỉ hiển thị trong chế độ Details. Bộ môn Các Hệ thống Thông tin 52
List. View Hoàng Hữu Việt n Các thuộc tính thường dùng n n n 2007 Items: Mảng các dòng (List. View. Items) trong List. View. Large. Image. List: Danh sách ảnh (Image. List) hiển thị trên List. View. Small. Image. List: Danh sách ảnh (Image. List) hiển thị trên List. View. Multi. Select: Có/Không cho phép chọn nhiều dòng (ngầm định là True). Selected. Items: Mảng các dòng được chọn. Bộ môn Các Hệ thống Thông tin 53
List. View Hoàng Hữu Việt n Các thuộc tính thường dùng n View: Kiểu hiện thị của List. View n n n Icons 2007 Icons: Hiển thị danh sách theo các biểu tượng List: Hiển thị danh sách theo một cột Details: Hiển thị List. View theo danh sách nhiều cột List Details Bộ môn Các Hệ thống Thông tin 54
List. View Hoàng Hữu Việt n Các phương thức thường dùng n n n Sự kiện thường dùng n 2007 Add: Thêm một dòng vào List. View Clear: Xoá tất cả các dòng của List. View Remove: Xoá một dòng trong List. View Remove. At(index): Xoá một dòng ở vị trí index Item. Selection. Changed: Xảy ra khi chọn một dòng. Bộ môn Các Hệ thống Thông tin 55
List. View Hoàng Hữu Việt n Ví dụ n 2007 Thiết kế form nhập, sửa, xoá dữ liệu Bộ môn Các Hệ thống Thông tin 56
List. View Hoàng Hữu Việt n Ví dụ n Thiết kế Form và đặt tên các đối tượng n n n Đặt thuộc tính cho list. View 1 n n n 2007 txt. Id, txt. First. Name, txt. Last. Name, txt. Address btn. New, btn. Edit, btn. Delete, btn. Save, btn. Cancel. Columns: Thêm 4 cột Full. Row. Select: true Grid. Lines: true Multi. Select: false View: Details Bộ môn Các Hệ thống Thông tin 57
List. View Hoàng Hữu Việt n Ví dụ private bool mode. New; private int row; //Ham dat dieu khien trang thai cac textbox va cac nut private void Set. Controls(bool edit) { txt. Id. Enabled = false; txt. First. Name. Enabled = edit; txt. Last. Name. Enabled = edit; txt. Address. Enabled = edit; btn. New. Enabled = !edit; btn. Edit. Enabled = !edit; btn. Delete. Enabled = !edit; btn. Save. Enabled = edit; btn. Cancel. Enabled = edit; } private void frm. List. View_Load(object sender, Event. Args e) { Set. Controls(false); } 2007 Bộ môn Các Hệ thống Thông tin 58
List. View Hoàng Hữu Việt n Ví dụ private void btn. New_Click(object sender, Event. Args e) { mode. New = true; Set. Controls(true); row = list. View 1. Items. Count; txt. Id. Text = Convert. To. String(row + 1); txt. First. Name. Clear(); txt. Last. Name. Clear(); txt. Address. Clear(); txt. First. Name. Focus(); } private void btn. Edit_Click(object sender, Event. Args e) { mode. New = false; Set. Controls(true); txt. First. Name. Focus(); } 2007 Bộ môn Các Hệ thống Thông tin 59
List. View Hoàng Hữu Việt n Ví dụ private void btn. Save_Click(object sender, Event. Args e) { if (mode. New) { list. View 1. Items. Add(txt. Id. Text); list. View 1. Items[row]. Sub. Items. Add(txt. First. Name. Text); list. View 1. Items[row]. Sub. Items. Add(txt. Last. Name. Text); list. View 1. Items[row]. Sub. Items. Add(txt. Address. Text); } else { list. View 1. Items[row]. Sub. Items[1]. Text = txt. First. Name. Text; list. View 1. Items[row]. Sub. Items[2]. Text = txt. Last. Name. Text; list. View 1. Items[row]. Sub. Items[3]. Text = txt. Address. Text; } Set. Controls(false); } 2007 Bộ môn Các Hệ thống Thông tin 60
List. View Hoàng Hữu Việt n Ví dụ private void btn. Cancel_Click(object sender, Event. Args e) { Set. Controls(false); } private void btn. Delete_Click(object sender, Event. Args e) { //Bo qua neu lenh xoa co loi try { list. View 1. Items. Remove. At(row); } catch (Exception) { } } 2007 Bộ môn Các Hệ thống Thông tin 61
List. View Hoàng Hữu Việt n Ví dụ private void list. View 1_Item. Selection. Changed(object sender, List. View. Item. Selection. Changed. Event. Args e) { row = e. Item. Index; txt. Id. Text = list. View 1. Items[row]. Sub. Items[0]. Text; txt. First. Name. Text = list. View 1. Items[row]. Sub. Items[1]. Text; txt. Last. Name. Text = list. View 1. Items[row]. Sub. Items[2]. Text; txt. Address. Text = list. View 1. Items[row]. Sub. Items[3]. Text; } private void btn. Close_Click(object sender, Event. Args e) { this. Close(); } 2007 Bộ môn Các Hệ thống Thông tin 62
Bài tập tổng hợp Hoàng Hữu Việt n 2007 Xây dựng chương trình Explore hiển thị thông tin về tệp Bộ môn Các Hệ thống Thông tin 63
Bài tập tổng hợp Hoàng Hữu Việt n Mã nguồn private void frm. Explore_Load(object sender, Event. Args e) { //Lay o dia cua may Drive. Info[] drives = Drive. Info. Get. Drives(); for (int i = 0; i < drives. Length; i++) { Tree. Node my. Node = new Tree. Node(); my. Node. Text = drives[i]. Name; my. Node. Image. Index = 0; my. Node. Selected. Image. Index = 0; tree. View 1. Nodes. Add(my. Node); Load. Tree. View(my. Node. Text, my. Node); } } 2007 Bộ môn Các Hệ thống Thông tin 64
Bài tập tổng hợp Hoàng Hữu Việt n Mã nguồn public void Load. Tree. View(string dir. Value, Tree. Node parent. Node) { string[] dir. Array = Directory. Get. Directories(dir. Value); if (dir. Array. Length != 0) { foreach (string directory in dir. Array) { Directory. Info cur. Directory = new Directory. Info(directory); Tree. Node my. Node = new Tree. Node(cur. Directory. Name); parent. Nodes. Add(my. Node); // recursively populate every subdirectory Load. Tree. View(directory, my. Node); } } } 2007 Bộ môn Các Hệ thống Thông tin 65
Bài tập tổng hợp Hoàng Hữu Việt n Mã nguồn public void Load. Files. In. Directory(string cur. Directory) { list. View 1. Items. Clear(); Directory. Info new. Directory = new Directory. Info(cur. Directory); // put files and directories into arrays Directory. Info[] dir. Array = new. Directory. Get. Directories(); File. Info[] file. Array = new. Directory. Get. Files(); foreach (Directory. Info dir in dir. Array) { List. View. Item new. Directory. Item = list. View 1. Items. Add(dir. Name); new. Directory. Item. Sub. Items. Add(""); new. Directory. Item. Sub. Items. Add("Folder"); new. Directory. Item. Sub. Items. Add(dir. Last. Write. Time. To. String()); new. Directory. Item. Image. Index = 0; } foreach (File. Info file in file. Array) { List. View. Item new. File. Item = list. View 1. Items. Add(file. Name); new. File. Item. Sub. Items. Add(file. Length. To. String()); new. File. Item. Sub. Items. Add("File"); new. File. Item. Sub. Items. Add(file. Last. Write. Time. To. String()); new. File. Item. Image. Index = 1; } } 2007 Bộ môn Các Hệ thống Thông tin 66
Bài tập tổng hợp Hoàng Hữu Việt n Mã nguồn private void tree. View 1_After. Select(object sender, Tree. View. Event. Args e) { string current. Directory = e. Node. Full. Path; Load. Files. In. Directory(current. Directory); } private void mnu. List_Click(object sender, Event. Args e) { list. View 1. View = View. List; } private void mnu. Details_Click(object sender, Event. Args e) { list. View 1. View = View. Details; } private void tb. Up_Click(object sender, Event. Args e) { string current. Directory; current. Directory = tree. View 1. Selected. Node. Parent. Full. Path; Load. Files. In. Directory(current. Directory); } 2007 Bộ môn Các Hệ thống Thông tin 67
Tab. Control Hoàng Hữu Việt n n Tạo ra các cửa sổ Tab Mỗi cửa sổ Tab gọi là một Tab. Page n Tab. Pages có thể chứa các điều khiển Tab. Page Tab. Controls in Tab. Page 2007 Bộ môn Các Hệ thống Thông tin 68
Tab. Control Hoàng Hữu Việt n 2007 Thêm và xoá các Tab. Page Bộ môn Các Hệ thống Thông tin 69
Tab. Control Hoàng Hữu Việt n 2007 Bài tập Bộ môn Các Hệ thống Thông tin 70
- Slides: 70