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

VBA ghi text vao giữa đoạn thẳng vừa vẽ

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

Cái thú của lập trình là tự mình tìm ra được lỗi của chương trình.

Bạn thử Debug chưa ?

Gợi ý

15454_addtext_error.png

  • Vote tăng 1

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

Cái thú của lập trình là tự mình tìm ra được lỗi của chương trình.

Bạn thử Debug chưa ?

Gợi ý

15454_addtext_error.png

Mình cũng chỉ là đang học thôi, đây là những bài mình đang tập làm nên cũng chưa biết debug

Đang cố gắng học từ các bài thực hành. Cũng cố gắng suy luận mà ko ra vì cũng chưa biết nhiều

Nếu như bạn hướng dẫn lỗi ở 2 chỗ này thì đúng là cái mình ko biết rồi. vì như mình nghĩ đối với lineobject nó dùng vậy thì pl nó cũng tương tự. Khong biết cú pháp có gì khác không?

Theo mình nghĩ chỗ Stapt ở dưới nó là tham chiếu điểm chèn đã được dịnh nghĩa ở trên

Còn chỗ Stapt trên thì mình thấy nó cũng chỉ là 1 ký hiệu thôi, nó tương tự phép gán pt1=ThisDrawing.Ultility.Getpoint...

Nhờ bạn chỉ rõ hơn hoặc sửa giúp mình, mình sẽ học được từ bài của bạn.

Cảm ơn bạn 

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

Bạn xem giúp mình được không?

khi chạy lần 1 nó vẫn báo lỗi ở dòng  SS.SelectOnScreen FT, FD

Sau đó cho chạy tiếp thì nó mới chạy được

Private Sub CommandButton1_Click()

Dim SS As AcadSelectionSet

If ThisDrawing.SelectionSets.Count > 0 Then

For Each SS In ThisDrawing.SelectionSets

If SS.Name = "Kira" Then

SS.Delete

Exit For

End If

Next

End If

Set SS = ThisDrawing.SelectionSets.Add("Kira")

Dim FT(0) As Integer

Dim FD(0) As Variant

FT(0) = 0: FD(0) = "LWPolyline"

 

SS.SelectOnScreen FT, FD

Dim LWPolylineObj As AcadLWPolyline

Dim TextPnt(2) As Double

Dim TextObj As AcadText

Dim i As Integer

For Each LWPolylineObj In SS

For i = 0 To UBound(LWPolylineObj.Coordinates) Step 2

'Toa do X

TextPnt(0) = 0.5 * (LWPolylineObj.Coordinates(i) + LWPolylineObj.Coordinates(i + 2))

'Toa do Y

TextPnt(1) = 0.5 * (LWPolylineObj.Coordinates(i + 1) + LWPolylineObj.Coordinates(i + 3))

 

Set TextObj = ThisDrawing.ModelSpace.AddText("Kira", TextPnt, LWPolylineObj.Length / 20)

 

If i + 3 = UBound(LWPolylineObj.Coordinates) Then

Exit For

End If

Next

Next

 

End Sub

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

Bạn xem giúp mình được không?

khi chạy lần 1 nó vẫn báo lỗi ở dòng  SS.SelectOnScreen FT, FD

Sau đó cho chạy tiếp thì nó mới chạy được

Private Sub CommandButton1_Click()

............

 

End Sub

Quên bài cũ rùi ?!

 

Thêm Hide và Show hộp thoại ở đầu và cuối Sub :

  • Vote tăng 1

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  

×