Trang chủ Lập trình MapBasic bằng ví dụ Chủ đề 7: Menu ngữ cảnh

Chủ đề 7: Menu ngữ cảnh

- Quảng cáo -

Menu ngữ cảnh là một phương tiện thuận tiện của giao diện người dùng, tăng tốc đáng kể công việc với ứng dụng. MapInfo phân biệt giữa các menu ngữ cảnh của cửa sổ bản đồ, cửa sổ danh sách,…

Các menu như vậy được quản lý bằng các công cụ phần mềm giống như các menu thông thường (Create Menu, Alter Menu, Alter Menu Item). Bạn có thể vô hiệu hóa menu ngữ cảnh bằng cách sử dụng một lệnh, chẳng hạn như Create Menu “MapperShortcut” As “(-“. Trong trường hợp này, menu ngữ cảnh của cửa sổ bản đồ sẽ bị vô hiệu hóa.

Code: Xây dựng menu ngữ cảnh cửa sổ bản đồ

Sub CreateContextualMenuMap
Create Menu “MapperShortcut” ID 17 As “(-”
Create Menu “MapperShortcut” ID 17 As
“Managing layers …” Calling 801,
“(-“,
“Find Sample” Calling 306,
“(-“,
“You &cut \ tCtrl + H / W ^ X / Mx / XCtrl + x” Calling 202,
“&Copy \ tCtrl + C / W ^ C / Mc / XCtrl + c” Calling 203,
“&Paste \ tCtrl + M / W ^ V / Mv / XCtrl + v” Calling 204,
“Do &Remove \ tDel” Calling 205,
“(-“,
“Show differently …” Calling 805,
“Show as it was” Calling 806,
“Show the entire layer …” Calling 807,
“(-“,
“Deselect” Calling 304,
“Refresh the window” Calling 610,
“(-“,
“Remove Cosmetics” Calling 810,
“! Disable Autoscroll ^ Enable Autoscroll” Calling 815,
“(-“,
“Objects” as “Objects”,
“(-“,
“Geo information …” Calling 207
End Sub

Ở đây, các phương thức được gọi được chỉ định bởi các định danh số, vì điều này được thực hiện trong tệp MapInfo.mnu. Để code dễ đọc hơn, bạn có thể sử dụng các hằng số có tên từ tệp menu.def thay vì số, nhưng trước tiên bạn cần kết nối nó với chương trình bằng lệnh Include “menu.def”. Sau đó, ví dụ lệnh: “Manage layers …” Calling 801 sẽ giống như “Manage layers …” Calling M_MAP_LAYER_CONTROL.

Code: Xây dựng menu ngữ cảnh của hộp danh sách

Sub CreateContextualMenuBrowse
Create Menu “BrowserShortcut” ID 18 As “(-”
Create Menu “BrowserShortcut” ID 18 As
“You &cut \ tCtrl + H / W ^ X / Mx / XCtrl + x” Calling 202,
“&Copy \ tCtrl + C / W ^ C / Mc / XCtrl + c” Calling 203,
“&Paste \ tCtrl + M / W ^ V / Mv / XCtrl + v” Calling 204,
“Do &Remove \ tDel” Calling 205,
“(-“,
“Find Sample” Calling 306,
“Deselect” Calling 304,
“(-“,
“&New entry \ tCtrl + П / W ^ G / Mn / XCtrl + n” Calling 702,
“&Show fields …” Calling 704
End Sub

Tất cả các sơ đồ xây dựng giống nhau, đầu tiên menu bị xóa hoàn toàn, và sau đó được xây dựng lại. Nếu bạn cần thêm một hoặc hai mục mới vào menu ngữ cảnh tiêu chuẩn, thì chỉ cần sử dụng lệnh sau đây Alter Menu ID 18 Add “Number of entries” Calling GetRowCount.

Bình luận bằng Facebook Comments

MẠNG XÃ HỘI

1,008ThíchThích
153Đăng kýĐăng Ký

TOOL PXTmap.com

BÀI VIẾT LIÊN QUAN

Chủ đề 10: Tạo cửa sổ bản đồ

Chúng tôi sẽ chỉ cho bạn cách tạo cửa sổ bản đồ và thực hiện một số thao tác với nó. Các...

Chủ đề 8: Lập trình với hộp thoại tiêu chuẩn

Hộp thoại có mặt trong hầu hết các chương trình. Cung cấp cho người dùng: Tùy chỉnh quá trình...

Chủ đề 6: Chỉnh sửa một menu hiện có

Chỉnh sửa menu: Thêm hoặc xóa menu tùy chỉnh dưới dạng một mục trong menu hiện có; Thêm hoặc...

Chủ đề 5: Tạo menu

Chương 2: Xây dựng giao diện Để người sử dụng có thể sử dụng chương trình, cần tạo ra...

Chủ đề 4: Thiết lập môi trường cơ bản cho chương trình

Hệ tọa độ (coordinate system) trong chương trình được đặt bằng lệnh Set CoordSys. Tất cả các hoạt động với tọa độ...