Đến nội dung


Hình ảnh
- - - - -

Lỗi khi Set ActiveLayout ?


  • Please log in to reply
2 replies to this topic

#1 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 18 November 2009 - 01:00 PM

Giả sử rằng Layout1 có trong bản vẽ

Khi lập trình bằng VBA hoặc VB.NET sử dụng Early binding:

Câu lệnh sau chạy rất tốt
Dim lay1 as AcadLayout
lay1 = ThisDrawing.Layouts.Item("Layout1")
ThisDrawing.ActiveLayout = lay1

Cũng dùng ngôn ngữ trên mà dùng Late binding thì lại báo lỗi
Dim AcadApp as Object = GetObject(,"AutoCAD.Application")
Dim lay1 as Object
lay1 = AcadApp.ActiveDocument.Layouts.Item("Layout1")
AcadApp.ActiveDocument.ActiveLayout = lay1 '<-- lỗi ở đây

Nội dung lỗi là "Member not found"

Có ai có thể giúp đỡ tôi về lỗi này không?
  • 0
Clear sky!

MF Rock collection.

#2 phantuhuong

phantuhuong

    biết dimstyle

  • Moderator
  • PipPipPipPipPip
  • 383 Bài viết
Điểm đánh giá: 200 (khá)

Đã gửi 29 November 2009 - 10:34 PM

Giả sử rằng Layout1 có trong bản vẽ

Khi lập trình bằng VBA hoặc VB.NET sử dụng Early binding:

Câu lệnh sau chạy rất tốt
Dim lay1 as AcadLayout
lay1 = ThisDrawing.Layouts.Item("Layout1")
ThisDrawing.ActiveLayout = lay1

Cũng dùng ngôn ngữ trên mà dùng Late binding thì lại báo lỗi
Dim AcadApp as Object = GetObject(,"AutoCAD.Application")
Dim lay1 as Object
lay1 = AcadApp.ActiveDocument.Layouts.Item("Layout1")
AcadApp.ActiveDocument.ActiveLayout = lay1 '<-- lỗi ở đây

Nội dung lỗi là "Member not found"

Có ai có thể giúp đỡ tôi về lỗi này không?



Bạn đã test lại bằng VBA chưa? Lỗi này trong VB.NET mà
  • 0
Bồi dưỡng Excel & VBA cho các đơn vị ở Hà Nội và khu vực lân cận

Từng bước loại đồ Tàu ra khỏi cuộc sống!


#3 anhcos

anhcos

    biết lệnh hatchedit

  • Advance Member
  • PipPipPipPip
  • 260 Bài viết
Điểm đánh giá: 170 (tàm tạm)

Đã gửi 30 November 2009 - 11:12 AM

Mình chưa test với VBA, lỗi này xảy ra với VB.NET.

Ngoài ra một số hàm khác cũng xảy ra tương tự.
VD:
hàm RemoveItems của đối tượng SelectionSet và hàm AddRegion của đối tượng MSpace/PSpace
đều không thể truyền tham số vào cho hàm được. Tham số này là một mảng các thực thể CAD.
  • 0
Clear sky!

MF Rock collection.