Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
hoathuongphuoc

Làm sao bắt được các Event Undo, Edit, Delete trong autocad

Các bài được khuyến nghị

Nếu đây là câu hỏi nhảm nhí thì các bạn có thể comment cho mình biết được không. thank.

Không nhảm nhí chút nào.

Nó thuộc loại câu đố "siêu tưởng" thường thấy trong báo Tuổi trẻ cười

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Thank các bạn. Mình đã bắt được các sự kiện đó.

Không cần phải khách sáo như thế.

 

Vấn đề là bạn có sẳn sàng share cách bắt các sự kiện đó như thế nào ?!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

''Event Erase, Modify, Edit

    Private DocMan As DocumentCollection

    Private db As Database

    'Initialize sub

    Public Sub Initialize() Implements Autodesk.AutoCAD.Runtime.IExtensionApplication.Initialize

 

        DocMan = AcApp.DocumentManager

 

        AddHandler DocMan.DocumentActivated, AddressOf callback_documentActivated

        AddHandler DocMan.DocumentCreated, AddressOf callback_documentCreated

        ' get First Open Drawing

        initEvents()

 

    End Sub

 

    Sub initEvents()

        For Each doc In DocMan

            Dim db As Database = doc.Database

            AddHandler db.ObjectAppended, AddressOf callback_ObjectAppended

            AddHandler db.ObjectErased, AddressOf callback_ObjectErased

            AddHandler db.ObjectModified, AddressOf callback_ObjectModified

        Next

    End Sub

 

    Private Sub callback_ObjectAppended(ByVal sender As Object, ByVal e As ObjectEventArgs)

        '  MsgBox(e.DBObject.ToString() & "-Appended" & sender.ToString())

    End Sub

 

    Private Sub callback_ObjectErased(ByVal sender As Object, ByVal e As ObjectErasedEventArgs)

        '  MsgBox(e.DBObject.ToString() & "-Erased" & sender.ToString())

    End Sub

    Private Sub callback_ObjectModified(ByVal sender As Object, ByVal e As ObjectEventArgs)

        '  MsgBox(e.DBObject.ToString() & "-Modified" & sender.ToString())

    End Sub

 

    'Terminate sub

    Public Sub Terminate() Implements Autodesk.AutoCAD.Runtime.IExtensionApplication.Terminate

        RemoveHandler DocMan.DocumentCreated, AddressOf callback_documentActivated

        RemoveHandler DocMan.DocumentCreated, AddressOf callback_documentCreated

        ' Not sure if this is needed

        RemoveHandler db.ObjectAppended, AddressOf callback_ObjectAppended

        RemoveHandler db.ObjectErased, AddressOf callback_ObjectErased

        RemoveHandler db.ObjectModified, AddressOf callback_ObjectModified

    End Sub

 

 

    Private Sub callback_documentCreated(ByVal sender As Object, ByVal e As DocumentCollectionEventArgs)

        initEvents()

    End Sub

 

    Private Sub callback_documentActivated(ByVal sender As Object, ByVal e As DocumentCollectionEventArgs)

        initEvents()

    End Sub

 

Không biết có đúng không. Nhưng mình xin mạo muội chia sẽ.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay
Đăng nhập để thực hiện theo  

×