Đến nội dung


Hình ảnh

Đổi Màu Text


  • Please log in to reply
18 replies to this topic

#1 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 09 November 2015 - 06:36 AM

Chào các bạn trên cadviet! Mình có đoạn lsp dùng để đổi màu text(gõ lệnh sau đó chọn dối tượng cần đổi màu và chọn màu cần đổi). Bây giờ mình muốn mọi người giúp mình sửa lại sau cho: gõ lệnh sau đó chọn đối tượng thì text tự động chuyển sang màu số 2
 
(defun c:Q ()
  (setq a (ssget))
  (setq color (getint "\nChon Mau: "))
  (command "change" a "" "p" "c" color "")
  (princ)
  )
 
Vì tính chất công việc nên mình không dùng lệnh matchprop. Mong mọi người giúp đỡ.
Thanks các bạn! 
 

  • 0

#2 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1436 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 09 November 2015 - 07:21 AM

 

Chào các bạn trên cadviet! Mình có đoạn lsp dùng để đổi màu text(gõ lệnh sau đó chọn dối tượng cần đổi màu và chọn màu cần đổi). Bây giờ mình muốn mọi người giúp mình sửa lại sau cho: gõ lệnh sau đó chọn đối tượng thì text tự động chuyển sang màu số 2
 
(defun c:Q ()
  (setq a (ssget))
  (setq color (getint "\nChon Mau: "))
  (command "change" a "" "p" "c" color "")
  (princ)
  )
 
Vì tính chất công việc nên mình không dùng lệnh matchprop. Mong mọi người giúp đỡ.
Thanks các bạn! 

 

thay dòng  (setq color (getint "\nChon Mau: ")) 

bằng dòng :  (setq color 2)


  • 0

#3 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 09 November 2015 - 06:26 PM

thay dòng  (setq color (getint "\nChon Mau: ")) 

bằng dòng :  (setq color 2)

Thanks bạn gia_bach nhiều nhé!

Bạn giúp mình thêm công dụng này với:

(defun c:Q ()
(command ".ddedit" ent "")
  (setq a (ssget))
  (setq color 2)
  (command "change" a "" "p" "c" color "")
  (princ)
  )
Khi gõ lệnh Q sau đó chọn đối tượng text thì text xanh lên(giống như edit vậy đó), sau đó enter thì text đổi màu. 

  • 0

#4 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 10 November 2015 - 06:23 PM

Thanks bạn gia_bach nhiều nhé!

Bạn giúp mình thêm công dụng này với:

(defun c:Q ()
(command ".ddedit" ent "")
  (setq a (ssget))
  (setq color 2)
  (command "change" a "" "p" "c" color "")
  (princ)
  )
Khi gõ lệnh Q sau đó chọn đối tượng text thì text xanh lên(giống như edit vậy đó), sau đó enter thì text đổi màu. 

  • -1

#5 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1436 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 10 November 2015 - 09:24 PM

OK  "Đọc kỹ hướng dẫn trước khi dùng."

.15454_changecolor.png


  • 0

#6 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5454 Bài viết
Điểm đánh giá: 2626 (tuyệt vời)

Đã gửi 10 November 2015 - 09:34 PM

Lỗi này là do:

* 2/3 của Cadviet, vì không hiển thị hết nội dung.

* 1/3 của member: vì viết xong, post, rồi không đọc lại.

Khi tick vào button "Trả lời" thì mọi thứ sẽ rõ ràng hơn.


  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#7 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1436 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 10 November 2015 - 09:39 PM

@ bác HA : Tôi biết chứ,

 

nhưng vấn đề là chủ thớt có đọc lại bài viết của mình không ?


  • 0

#8 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 10 November 2015 - 10:36 PM

@ bác HA : Tôi biết chứ,

 

nhưng vấn đề là chủ thớt có đọc lại bài viết của mình không ?

Không biết tại sao nó không hiển thị hết nội dung nữa. Post xong xong rồi nhìn lại cũng không biết làm sao cho nó hiện đủ nội dung nữa.


  • 0

#9 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1436 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 11 November 2015 - 08:54 AM

 

Thanks bạn gia_bach nhiều nhé!

Bạn giúp mình thêm công dụng này với:

(defun c:Q ()
(command ".ddedit" ent "")
  (setq a (ssget))
  (setq color 2)
  (command "change" a "" "p" "c" color "")
  (princ)
  )
Khi gõ lệnh Q sau đó chọn đối tượng text thì text xanh lên(giống như edit vậy đó), sau đó enter thì text đổi màu. 

 

mục đích của việc "Text xanh lên" để làm gì ?


  • 0

#10 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 11 November 2015 - 06:14 PM

mục đích của việc "Text xanh lên" để làm gì ?

Mục đích của mình là: trong bv có nhiều text cần sửa, mình ứng dụng lsp này để biết text nào đã sửa và chưa sửa(khi mình chạm vào nó thì nó đổi màu, nếu ta sửa nội dung text hay không text vẫn đổi màu).

Thanks bạn! 


  • 0

#11 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 13 November 2015 - 07:51 PM

Mục đích của mình là: trong bv có nhiều text cần sửa, mình ứng dụng lsp này để biết text nào đã sửa và chưa sửa(khi mình chạm vào nó thì nó đổi màu, nếu ta sửa nội dung text hay không text vẫn đổi màu).

Thanks bạn! 


  • -1

#12 pphung183

pphung183

    biết dimstyle

  • Members
  • PipPipPipPipPip
  • 384 Bài viết
Điểm đánh giá: 425 (tốt)

Đã gửi 13 November 2015 - 08:14 PM

 

Mục đích của mình là: trong bv có nhiều text cần sửa, mình ứng dụng lsp này để biết text nào đã sửa và chưa sửa(khi mình chạm vào nó thì nó đổi màu, nếu ta sửa nội dung text hay không text vẫn đổi màu).

Thanks bạn! 

 

Thấy bạn hỏi buồn cười thật :) , Thử xem trúng ý theo Code của bạn không nhé :)

(defun c:Q (/ ent color)
(while (setq ent (car (entsel "\nChon Text de Edit :")))
(command "change" ent "" "p" "c" 3 "") 
(command ".ddedit" ent "")
(setq color 2) 
(command "change" ent "" "p" "c" color "") ) 
(princ))


  • 2

#13 pphung183

pphung183

    biết dimstyle

  • Members
  • PipPipPipPipPip
  • 384 Bài viết
Điểm đánh giá: 425 (tốt)

Đã gửi 13 November 2015 - 08:19 PM

Giải trí nghe thơ cho sáng ý :) 


  • 0

#14 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 13 November 2015 - 09:30 PM

 

ok. Đúng ý mình rồi. Thanks bạn!

Bạn tích hợp dùm mình đối với trường hợp dim luôn được không bạn. Không biết nên nhờ các bạn cũng thấy ngại lắm! 

 

 
(defun c:Q (/ ent color)
(while (setq ent (car (entsel "\nChon Text de Edit:")))
(command "change" ent "" "p" "c" 3 "") 
(command ".ddedit" ent "")
(setq color 2) 
(command "change" ent "" "p" "c" color "") ) 
(princ))
 
(setq ssd (acet-ss-to-list (ssget (list (cons 0 "dimension")))))
(foreach dm ssd
     (if (/= (cdr (assoc 1 (entget dm))) "")
            (command "._DIMOVERRIDE" "DIMCLRT" "2" "DIMCLRD" "8" "DIMCLRE" "8" "" dm "")
     )
     (entmod els)
)
(command "undo" "e")
(princ)
)

 


  • 0

#15 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 14 November 2015 - 04:57 AM

 

 

ok. Đúng ý mình rồi. Thanks bạn!

Bạn tích hợp dùm mình đối với trường hợp dim luôn được không bạn. Không biết nên nhờ các bạn cũng thấy ngại lắm! 

 

 

 

 

Có nguyên 1 topic Lisp đổi màu text sau khi sửa : (đối với cả 2 Trường hợp dim, text nằm ở trong bài viết số 29 ở Link dưới đây)

http://www.cadviet.c...-khi-sua/page-2


  • 0

#16 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 14 November 2015 - 07:07 AM

Có nguyên 1 topic Lisp đổi màu text sau khi sửa : (đối với cả 2 Trường hợp dim, text nằm ở trong bài viết số 29 ở Link dưới đây)

http://www.cadviet.c...-khi-sua/page-2

Thanks bạn Tue_NV, mình cũng có tham khảo qua, nhưng lsp đó chỉ đổi màu khi ta đã sửa chúng. Ở đây mình muốn là khi chạm vào thì text hay dim đều đổi màu(cho dù mình có sửa chúng hay không sửa chúng vẫn đổi màu)


  • 0

#17 pphung183

pphung183

    biết dimstyle

  • Members
  • PipPipPipPipPip
  • 384 Bài viết
Điểm đánh giá: 425 (tốt)

Đã gửi 14 November 2015 - 08:52 AM

Thanks bạn Tue_NV, mình cũng có tham khảo qua, nhưng lsp đó chỉ đổi màu khi ta đã sửa chúng. Ở đây mình muốn là khi chạm vào thì text hay dim đều đổi màu(cho dù mình có sửa chúng hay không sửa chúng vẫn đổi màu)

Thôi thì thử cái này xem :) :

(defun c:q (/ ent subent tn) (vl-load-com)
(while (setq ent (entsel "\nPick chon Text : ")) 
(setq subent (car (nentselp (cadr ent))))
(vla-put-Color (vlax-ename->vla-object subent) 2)
(setq tn (lisped (cdr (assoc 1 (entget subent)))))
(entmod (subst (cons 1 tn) (assoc 1 (entget subent)) (entget subent)))
(entupd (car ent)) )
(princ))


  • 2

#18 pphung183

pphung183

    biết dimstyle

  • Members
  • PipPipPipPipPip
  • 384 Bài viết
Điểm đánh giá: 425 (tốt)

Đã gửi 14 November 2015 - 11:36 AM

Có lẻ theo cách củ chuối này trúng ý bạn hơn :D :

(defun c:q (/ ent obj tn) (vl-load-com)
(while (setq ent (car (entsel "\nPick chon Text : ")))
(setq obj (vlax-ename->vla-object ent))
(if (wcmatch (cdr (assoc 0 (entget ent))) "DIMENSION")
(progn (vla-put-TextColor obj 3) (vl-cmdf ".ddedit" ent "") (vla-put-TextColor obj 2))
(progn (vla-put-Color obj 3) (vl-cmdf ".ddedit" ent "") (vla-put-Color obj 2)) )) 
(princ)) 


  • 3

#19 Huynh Nghia

Huynh Nghia

    biết vẽ ellipse

  • Members
  • PipPip
  • 52 Bài viết
Điểm đánh giá: -22 (kém)

Đã gửi 14 November 2015 - 01:26 PM

 

Có lẻ theo cách củ chuối này trúng ý bạn hơn :D :

(defun c:q (/ ent obj tn) (vl-load-com)
(while (setq ent (car (entsel "\nPick chon Text : ")))
(setq obj (vlax-ename->vla-object ent))
(if (wcmatch (cdr (assoc 0 (entget ent))) "DIMENSION")
(progn (vla-put-TextColor obj 3) (vl-cmdf ".ddedit" ent "") (vla-put-TextColor obj 2))
(progn (vla-put-Color obj 3) (vl-cmdf ".ddedit" ent "") (vla-put-Color obj 2)) )) 
(princ)) 

Thanks bạn pphung183! Trong trường hợp này thì cách củ chuối này hợp vối mình hơn. 


  • 0