HTTP
-
Số lượng nội dung
7 -
Đã tham gia
-
Lần ghé thăm cuối
Bài đăng được đăng bởi HTTP
-
-
tôi dùng vb2005 không cần dùng lệnh set. nếu đánh lệnh này thì nó cũng tự xoá đi mà chỉ thành 1 dòng như trên thôi.
-
Cảm ơn bác!
AcadApp.ActiveDocument.ActiveLayer = Tenlayer 'lệnh này gây lỗi khi chạy
còn cái lỗi chính này bác có fix được ko. cái này mà không được thì cái trên cũng không có tác dụng.
-
Mình dùng cad2009 và vb2005 để vẽ nhưng nếu sử dụng library của cad thì vẫn set ActiveLayer được nhưng khi không sử dụng thì lệnh này báo lỗi.
Dim AcadApp As Object 'AcadApplication 'ứng dụng autocad Dim Strlayer As String Dim Tenlayer As Object AcadApp.ActiveDocument.Linetypes.Load("continuous", "acad.lin") AcadApp.ActiveDocument.Linetypes.Load("Acad_Iso03W100", "acad.lin") Strlayer = "Layermoi" Tenlayer = AcadApp.ActiveDocument.Layers.Add(Strlayer) With LayerChusolieu .Linetype = "continuous" .color = acColor.acGreen 'lệnh này gây lỗi???????????????? .LayerOn = True .Lock = False .Lineweight = .ACAD_LWEIGHT.acLnWtByLwDefault ''lệnh này gây lỗi????????? End With AcadApp.ActiveDocument.ActiveLayer = Tenlayer 'lệnh này gây lỗi khi chạy
Bác nào khắc phục được xin chỉ giáo với. mình xin cảm ơn!
-
Các bác không nên nói bác vndesperados như thế. Các phần mềm thông dụng ở nước ngoài như windows, office, cad ... hầu hết mình đều dùng chùa bởi vì nó rất mắc tiền, dân mình nghèo đâu đủ tiền mua và nhưng pm đó họ cũng bán được rất nhiều nên mình có dùng chùa thì cũng chưa ảnh hưởng nhiều đến họ lắm và còn nhiều lý do khác. còn như bác vndesperados đã đi làm rồi, phải tính đến vấn đề kinh tế thì các bác cứ nghĩ xem bỏ ra bao nhiêu công sức để làm được sản phẩm mà không mang lại được tí lợi ích gì cho mình thì chắc đi làm thế thì lấy gì mà ăn.
các bác cần ủng hộ pm trong nước để nó còn phát triển chứ. nếu cứ ra cái nào là dùng chùa luôn cái đó thì còn ai chịu làm nữa. chí ít cũng phải để cho tác giả bán được một ít chứ.
cho nên tôi nghĩ bác vndesperados nên làm một bản frii cho anh em sv, còn bản prồ thì bán cho người có đủ tài chính mua thì hay hơn.
-
phần mềm bác vndesperados tính toán và thống kê được khối lượng đào đắp thì cũng hay thật nhưng mà bác không cho xem bảng kết quả thế nào thì cũng khó hình dung. Bác có thể up lên vài hình ảnh kết quả tính toán đó được không??
-
Tôi có cách này hay hơn là phải khai báo trong thư viện anh BKXD ơi:- Khai báo thư viện và đối tượng như bình thường.
- Sau khi chương trình ổn định thì thay các đối tượng như AcadLine, AcadText,... thành Object hết!
(biến liên kết sớm thành muộn)
Thế là không lo version nữa- nhưng yêu cầu phải từ Cad 2000 trở lên (14 không được)
Bác Phantuhuong có thể cho một ví dụ dùng VB.net vẽ một đoạn thẳng được không.
Tôi đã thử rồi mà không làm được. Để mở Cad ra vẽ thì tôi dùng đoạn mã:
Public vAcadApp As Autodesk.AutoCAD.Interop.AcadApplication vAcadApp = New Autodesk.AutoCAD.Interop.AcadApplication vAcadApp.Visible = True
nhưng để dùng được cái này thì phải nạp library vào nên nó không hỗ trợ các ver khác nhau của cad.
Có cách nào không dùng library của cad mà vẫn gọi được cad lên và vẽ bình thường không.
Bác nào biết xin chỉ giúp! cảm ơn nhiều!
Set ActiveLayer trong vb.net
trong Lập trình khác
Đã đăng · Trả lời báo cáo
đúng là layer LayerChusolieu phải đổi tên thành Tenlayer. hai lỗi trên mình đã fix thành số như bạn hướng dẫn và được rồi. nhưng dòng set Activelayer không chạy được, nó vẫn báo lỗi member not found. Mình đã chuyển sang sử dụng library rồi nhưng mình nghĩ đây cũng là cách hay để dùng với nhiều phiên bản Cad.