
Dạng bài tập về Micosoft.NET- P32
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Dạng bài tập về Micosoft.NET- P32Các bài tập Microsoft .NET 156Thử click new Menu Item trong ContextMenu1, chương trình sẽ hiển thịthông điệp You clicked new Menu Item!. Bây giờ click nút ClearContextMenu rồi right click Textbox1. ContextMenu1 đã bị cleared nênsẽ không hiển thị.Duplicating MenusMột việc khác ta có thể làm trong lúc Runtime của chương trình làcloning (tạo object song sinh). Thí dụ, ta muốn dùng Edit menu củaMainMenu1 làm ContextMenu (giống giống như trong VB6) choTextbox1.Để thực hiện việc này, ta dùng method CloneMenu(). Dưới đây là codeta dùng để thay thế ContextMenu1 trong chương trình bằng Edit menucủa MainMenu1.Private Sub BtnCloneMenu_Click( ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles BtnCloneMenu.Click Instantiate a new ContextMenu object Dim newContextMenu As New ContextMenu() Add a clone copy of EditMenu to this new ContextMenus collection of MenuItems newContextMenu.MenuItems.Add(editMenuItem.CloneMenu)Các bài tập Microsoft .NET 157 Assign this new Context Menu to Textbox1 Textbox1.ContextMenu = newContextMenuEnd SubKhởi động chương trình, click nút Clone Menu, rồi right click TextBox1,ContextMenu mới sẽ hiển thị như dưới đây:Lưu ý: Vì CloneMenu() clone hoàn toàn Object editMenuItem, kể cả cácEvent Handlers của các SubMenuItems nên ta không cần phải làm thêmgì cả.Muốn trở lại trạng thái cũ, tức là dùng ContextMenu1 cho Textbox1, tachỉ cần reassign ContextMenu1 vào property ContextMenu của Textbox1như sau:Textbox1.ContextMenu = ContextMenu1MDI FormsTrong VB6 ta tạo một MDI (Multiple Document Interface) form bằngcách set property MDIChild của form ấy thành True. Một form như thếchỉ có thể được dùng làm child form, tức là nó cần một form MDI parentđể hiển thị trong ấy. Ngoài ra, mỗi application chỉ có thể có một formCác bài tập Microsoft .NET 158MDI parent duy nhất và chỉ trong lúc thiết kế ta mới có thể chỉ định đặctính của một form là MDIChild. Một form không thể trở thành mộtMDIChild lúc Runtime.Trong VB.NET, một form có thể trở thành một MDI child lúc Runtimebằng cách set property MDIParent của form ấy để nhắm vào một formMDI parent. Do đó, một form có thể vừa là MDIchild form, vừa là formbình thường tùy theo hoàn cảnh. Thật ra, ngược với VB6, ta không thể setproperty MDIParent lúc thiết kế, mà phải làm lúc Runtime.Giống như VB6, trong VB.NET ta có thể hiển thị nhiều forms MDIChildtrong một form MDI parent, khi parent form di chuyển thì mang theo cácforms con. Khi hiển thị nhiều child forms, ta có thể dùng propertyActiveForm để biết child form nào hiện thời là Active.Ta thử khởi động một Windows Application mới. Đổi tên Form1 thànhParentForm và chỉ định nó làm MDI parent bằng cách set propertyIsMDIContainer của nó thành True. Kế đó thêm một form và đổi tên nóthành ChildForm. Dưới đây là code để thêm hai child forms vàoParentForm và hiển thị chúng: Declare child forms of type ChildFormPrivate WithEvents FirstChild As ChildFormPrivate WithEvents SecondChild As ChildFormPrivate Sub ParentForm_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) _ Handles MyBase.Load Instantiate an Object of type Childform FirstChild = New ChildForm() Make this form the MDI Parent of FirstChild FirstChild.MdiParent = Me FirstChild.Text = First Child Form Set Title Show FirstChild FirstChild.Show()Các bài tập Microsoft .NET 159 Instantiate the second Object of type Childform SecondChild = New ChildForm() Make this form the MDI Parent of SecondChild SecondChild.MdiParent = Me SecondChild.Text = Second Child Form Set Title Show SecondChild SecondChild.Show()End SubĐể cung cấp một Menu hiển thị danh sách các forms MDIchild củaParentForm, ta thêm control MainMenu vào ParentForm. Kế đó, tạo mộtMenuItem tên Windows và set property MDIList của nó thành True.Property này sẽ khiến danh sách các forms child tự động hiển thị làmnhững menu items nằm phía dưới Menu Windows. Danh sách này tựđộng cập nhật khi một child form trở thành Active, được thêm vào, hay bịlấy ra.Parent MDI form có một method tên là LayoutMDI để tự động sắp đặt vịtrí các forms child theo kiểu Cascade hay Tile layout. Thêm mộtMenuItem tên Tile Vertical và nhét mấy hàng code dưới đây vào form đểxử lý Event click của nó:Private Sub tileVerticalMenuItem_Click( ByVal sender As System.Object, ByVal e AsSystem.EventArgs) _ Handles tileVerticalMenuItem.Click Me.LayoutMdi(System.Windows.Forms.MdiLayout.TileVertical)End SubKhởi động chương trình, by default hai forms childs được layout kiểuCascade. Trong ...
Tìm kiếm theo từ khóa liên quan:
tài liệu dot net visual studio thủ thuật .net lập trình .net lập trình visual tài liệu .net 2010Tài liệu có liên quan:
-
Lập trình .net 4.0 và visual studio 2010 part 63
7 trang 140 0 0 -
Hướng dẫn thực hành lập trình C trên Visual Studio
9 trang 138 0 0 -
Lập trình .Net - (Tập 3: Lập trình giao diện người dùng theo C#): Phần 2
56 trang 38 0 0 -
37 trang 31 0 0
-
Lập trình .net 4.0 và visual studio 2010 part 11
6 trang 31 0 0 -
HƯỚNG DẪN VẼ ĐỒ THỊ VỚI VISUAL STUDIO C# 2008
12 trang 30 0 0 -
Lập trình .net 4.0 và visual studio 2010 part 3
10 trang 28 0 0 -
Lập trình .net 4.0 và visual studio 2010 part 60
9 trang 28 0 0 -
Lập trình .Net - (Tập 3: Lập trình giao diện người dùng theo C#): Phần 1
43 trang 27 0 0 -
Dạng bài tập về Micosoft.NET- P8
5 trang 26 0 0 -
24 trang 24 0 0
-
Lập trình .net 4.0 và visual studio 2010 part 50
7 trang 24 0 0 -
Dạng bài tập về Micosoft.NET- P16
5 trang 24 0 0 -
Dạng bài tập về Micosoft.NET- P35
4 trang 23 0 0 -
8 trang 23 0 0
-
Tài liệu Lập trình C# 2008 cơ bản
100 trang 23 0 0 -
Dạng bài tập về Micosoft.NET- P15
5 trang 22 0 0 -
Dạng bài tập về Micosoft.NET- P14
5 trang 22 0 0 -
Dạng bài tập về Micosoft.NET- P28
5 trang 22 0 0 -
Lập trình .net 4.0 và visual studio 2010 part 59
8 trang 21 0 0