Danh mục

Phát triển AutoCAD bằng ActiveX & VBA - Chương 7

Số trang: 11      Loại file: pdf      Dung lượng: 907.14 KB      Lượt xem: 13      Lượt tải: 0    
tailieu_vip

Hỗ trợ phí lưu trữ khi tải xuống: 1,000 VND Tải xuống file đầy đủ (11 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

LÀM VIỆC VỚI CÁC SỰ KIỆNTrong chương nàyCác sự kiện chẳng hạn như thông báo hoặc thông điệp của AutoCAD, dùng để thông báo tới người dùng về trạng thái hiện tại của phiên làm việc hoặc để cảnh báo cho người dùng về những gì đã xảy ra. Ví dụ, khi mở bản vẽ thì sự kiện BeginOpen được gọi, sự kiện này chứa tên bản vẽ AutoCAD được mở; còn khi đóng bản vẽ, sẽ có một sự kiện khác được gọi. Khi có được những thông tin này ta có thể xây dựng được chương trình giúp...
Nội dung trích xuất từ tài liệu:
Phát triển AutoCAD bằng ActiveX & VBA - Chương 7LÀM VIỆC VỚI CÁC SỰ KIỆN 7 Trong chương nàyCác sự kiện chẳng hạn như thông báo hoặc thông Khái niệm về các sự kiện trong AutoCADđiệp của AutoCAD, dùng để thông báo tới người Chỉ dẫn xây dựng bộ xửdùng về trạng thái hiện tại của phiên làm việc hoặc lý sự kiệnđể cảnh báo cho người dùng về những gì đã xảy ra . Xử lý sự kiện ở mức ứng dụngV í dụ, khi mở bản vẽ thì sự kiện BeginOpen được Xử lý sự kiện ở mức bảngọi, sự kiện này chứa tên bản vẽ AutoCAD được mở ; vẽcòn k hi đóng bản vẽ, sẽ có một sự kiện khác được Xử lý sự kiện ở mức đối tượnggọi. Khi có được những thông tin này ta có thể xâydựng được chương trình giúp xác định được thờigian người dùng dành cho một bản vẽ nào đó. Phát triển ứng dụng ActiveX và VBA | 2031. Khái niệm về các sự kiện trong AutoCADTrong AutoCAD có 3 loại sự kiện: Các sự kiện ở mức ứng dụng sẽ đáp ứng lại những thay đổi trong ứng dụng AutoCAD và môi trường của nó bao gồm: mở, lưu, đóng và in các bản vẽ, tạo bản vẽ mới, sử dụng dòng lệnh, tải hoặc dỡ bỏ ứng dụng ARX và AutoLISP, thay đổi các biến hệ thống và thay đổi đối với cửa sổ của ứng dụng. Các sự kiện ở mức bản vẽ sẽ đáp ứng lại những thay đổi đối với từng bản vẽ hoặc những gì bên trong nó bao gồm: thêm, xoá hoặc thay đổi các đối tượng, kích hoạt trình đơn tắt, thay đổi trong tập lựa chọn, thay đổi đối với cửa sổ vẽ và quá trình tái tạo bản vẽ. Ngoài ra cũng có một số các sự kiện ở mức này đáp ứng lại với việc mở, đóng và in một bản vẽ, tải hoặc dỡ bỏ các ứng dụng ARX và AutoLISP từ bản vẽ. Các sự kiện ở mức đối tượng đáp ứng lại các thay đổi của một đối tượng cụ thể. Hiện tại chỉ có một sự kiện duy nhất ở mức này, nó được gọi mỗi khi đối tượng bị thay đổi.Các hàm đáp ứng lại các sự kiện được gọi là bộ xử lý sự kiện và được thực hiện mộtcách tự động mỗi khi sự kiện tương ứng được gọi. Các thông tin chứa trong các sựkiện, ví dụ như tên bản vẽ trong sự kiện BeginOpen, được chuyển vào bộ xử lý sựkiện thông qua các tham số.2. Chỉ dẫn xây dựng bộ xử lý sự kiệnĐiều quan trọng cần lưu ý là các sự kiện chỉ đơn giản cung cấp các thông tin dựatrên trạng thái hoặc các hoạt động diễn ra trong AutoCAD. Mặc dù bộ xử lý sự kiệncó thể được viết để đáp ứng lại các sự kiện đó, nhưng AutoCAD lại nằm bên trongquá trình xử lý khi các bộ xử lý sự kiện được gọi. Do đó các bộ xử lý sự kiệnthường có những hạn chế về những tác vụ có thể thực hiện được nhằm đảm bảo sựan toàn cho các thao tác tác động đến AutoCAD và cơ sở dữ liệu. Không nên dựa vào trình tự của các sự kiện Khi viết các bộ xử lý sự kiện ta không nên dựa vào trình tự xảy ra của các sự kiện như theo mình suy nghĩ. Ví dụ: khi sử dụng lệnh OPEN, sự kiện BeginCommand, BeginOpen, EndOpen và EndCommand sẽ đều được thực hiện. Tuy nhiên, chúng có thể không xảy ra theo trật tự đó. Trình tự sự kiện duy nhất có thể sử dụng một cách an toàn là sự kiện Begin sẽ xảy ra trước sự kiện End tương ứng. Trong ví dụ trước, sự kiện có thể được xảy ra theo trình tự sau: BeginCommand – BeginOpen – EndCommand – EndOpen hoặc BeginCommand – EndCommand – BeginOpen – EndOpen. Không nên dựa vào trình tự của các thao tác xử lý Nếu ta xoá đối tượng 1 và tiếp theo là đốí tượng 2, không nên cho rằng sự kiện ObjectErased cho đối tượng 1 phát sinh trước rồi sau đó cho đối tượng 2, vì thực tế, ta có thể sẽ nhận được sự kiện của đối tượng 2 trước. Không nên dùng các hàm tương tác trong bộ xử lý sự kiện204 | Chương 7: Làm việc với các sự kiện Cố gắng thực hiện một hàm tương tác trong bộ xử lý sự kiện có thể dẫn đến nhiều rắc rối khá nghiêm trọng, vì AutoCAD có thể vẫn tiếp tục thực hiện một câu lệnh nào đó vào thời điểm mà sự kiện bắt đầu. Vì vậy, nên tránh sử dụng các phương thức đòi hỏi phải nhập dữ liệu, ví dụ như GetPoint, GetEntity, GetKeyword… cũng như các thao tác chọn đối tượng và phương thức SendCommand trong bất cứ bộ xử lý sự kiện nào. Không nên gọi hộp thoại trong bộ xử lý sự kiện Hộp thoại được coi là hàm tương tác, có thể cản trở các thao tác đang sử dụng trong AutoCAD. Tuy nhiên các hộp thông báo hoặc cảnh báo được coi là không ...

Tài liệu được xem nhiều: