Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
Học Sinh Lớp 1

Nhờ viết code lưu biến ở hàm getkword

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

 em có một đoạn code thế này:

(initget 1 "+ - * /")
  (setq pt (getkword "Chon phep tinh <+ - * />: "))

Nếu mình muốn lưu lại giá trị + - * / do người dùng nhập trước đó thì phải làm như thế nào ạ. mong mọi người giúp đỡ.

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

(or gtchuoi (setq gtchuoi "noidung"))

(setq gtchuoi (cond ((getstring (strcat "\nNhap chu < " gtchuoi " >:")))(gtchuoi)))

 

  • Like 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

Hê hê,

 

Với trường hợp đang mở bản vẽ mà lấy lại giá trị cũ trước đó thì đơn giản.

Trường hợp tắt bản vẽ đi mở lại muốn lấy giá trị cũ thì hơi phức tạp hơn tí.

^_^

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
2 phút trước, Bee đã nói:

Hê hê,

 

Với trường hợp đang mở bản vẽ mà lấy lại giá trị cũ trước đó thì đơn giản.

Trường hợp tắt bản vẽ đi mở lại muốn lấy giá trị cũ thì hơi phức tạp hơn tí.

^_^

a bee có nhớ e ko à ^^ xưa có nhờ a viết cái code này:  Dim tu dong va danh so dim_MCN_MCD_add_load_com

lâu lắm rồi ko nc vs a

 

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
5 phút trước, Bee đã nói:

Hê hê,

 

Với trường hợp đang mở bản vẽ mà lấy lại giá trị cũ trước đó thì đơn giản.

Trường hợp tắt bản vẽ đi mở lại muốn lấy giá trị cũ thì hơi phức tạp hơn tí.

^_^

trường hợp là đang mở bản vẽ a à. dùng code lần 1 rồi muốn lưu lại để dùng lần 2 ạ

 

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
17 phút trước, Danh Cong đã nói:

(or gtchuoi (setq gtchuoi "noidung"))

(setq gtchuoi (cond ((getstring (strcat "\nNhap chu < " gtchuoi " >:")))(gtchuoi)))

 

 nhờ bạn lắp vào code này được không ạ :(

(initget 1 "+ - * /")
  (setq ptinh (getkword "Chon phep tinh <+ - * />: "))
  (cond ((= ptinh "+")  ;;; cong
     (prompt "\nChon text de cong:")
     (setq ss (ssget '((0 . "TEXT")))
           kqua 0)
     (while (and ss (> (sslength ss) 0))
       (setq kqua (+ kqua (atof (cdr (assoc 1 (entget (setq ent (ssname ss 0))))))))
       (ssdel ent ss))
     (princ kqua))

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
10 phút trước, Học Sinh Lớp 1 đã nói:

a bee có nhớ e ko à ^^ xưa có nhờ a viết cái code này:  Dim tu dong va danh so dim_MCN_MCD_add_load_com

lâu lắm rồi ko nc vs a

 

Oài , cái này chắc lâu lắm rồi. Mình không nhớ. ^_^

 

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
Vừa xong, Bee đã nói:

Oài , cái này chắc lâu lắm rồi. Mình không nhớ. ^_^

 

hehe e có sđt rồi mờ bữa say quá mất luôn đt thế là mất liên lạc với bác luôn ^^ a có tài liệu về làm vl-.... và hàm acet-... gửi cho e xin với ^^ :P

 

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
1 phút trước, Học Sinh Lớp 1 đã nói:

hehe e có sđt rồi mờ bữa say quá mất luôn đt thế là mất liên lạc với bác luôn ^^ a có tài liệu về làm vl-.... và hàm acet-... gửi cho e xin với ^^ :P

 

cần hàm gì thì google hàm đấy. Hoặc đọc help là được mà. Diễn đàn cũng nhiều bài nói rồi, em chịu khó tìm nhé. Hàm nào khó thì pót lên ai rảnh sẽ trả lời ngay mà. ^_^

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

 

1 phút trước, Bee đã nói:

cần hàm gì thì google hàm đấy. Hoặc đọc help là được mà. Diễn đàn cũng nhiều bài nói rồi, em chịu khó tìm nhé. Hàm nào khó thì pót lên ai rảnh sẽ trả lời ngay mà. ^_^

e hơi dốt :(( tiện thể đây nhờ bác giải thích cho e cái này với ạ :(

(vlax-ename->vla-object (car (entsel "\nChon text de ghi ket qua:")))

và hàm này nữa

vla-put-TextString

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
2 phút trước, Học Sinh Lớp 1 đã nói:

 

e hơi dốt :(( tiện thể đây nhờ bác giải thích cho e cái này với ạ :(

(vlax-ename->vla-object (car (entsel "\nChon text de ghi ket qua:")))

và hàm này nữa

vla-put-TextString

CadViet Search đi bạn. Cái này đã có chủ đề thảo luận rồi. Nếu tôi không nhớ lầm thì của #Nacata và #Ketxu.

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
1 phút trước, Học Sinh Lớp 1 đã nói:

 

e hơi dốt :(( tiện thể đây nhờ bác giải thích cho e cái này với ạ :(

(vlax-ename->vla-object (car (entsel "\nChon text de ghi ket qua:")))

và hàm này nữa

vla-put-TextString

Help thôi

(setq e (car (entsel))) <Entity name: 27e0540>

(vlax-ename->vla-object e) #<VLA-OBJECT IAcadLWPolyline 03f713a0>

--> (car (entsel)) return ename

-->(vlax-ename->vla-object ename) return 1 activex object

--> (vla-get....) lấy 1 property nào đấy của vlaobj

-->(vla-put...) đặt 1 property nào đấy của vlaobj theo giá trị mình muốn.

--> muốn xem object có những property gì thì dùng (vlax-dump-object vlaobj)

Tìm hiểu sâu hơn thì ngcuu về ActiveX của Window. Vlisp có thể control ActiveX object trong win của tất cả các phần mềm: word, excell, .......

Tạm thế còn lại hóng các repply khác. ^_^

 

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
20 phút trước, Bee đã nói:

Help thôi

(setq e (car (entsel))) <Entity name: 27e0540>

(vlax-ename->vla-object e) #<VLA-OBJECT IAcadLWPolyline 03f713a0>

--> (car (entsel)) return ename

-->(vlax-ename->vla-object ename) return 1 activex object

--> (vla-get....) lấy 1 property nào đấy của vlaobj

-->(vla-put...) đặt 1 property nào đấy của vlaobj theo giá trị mình muốn.

--> muốn xem object có những property gì thì dùng (vlax-dump-object vlaobj)

Tìm hiểu sâu hơn thì ngcuu về ActiveX của Window. Vlisp có thể control ActiveX object trong win của tất cả các phần mềm: word, excell, .......

Tạm thế còn lại hóng các repply khác. ^_^

 

 

Có mà bác @Bee

 

  • Like 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
21 phút trước, Bee đã nói:

Help thôi

(setq e (car (entsel))) <Entity name: 27e0540>

(vlax-ename->vla-object e) #<VLA-OBJECT IAcadLWPolyline 03f713a0>

--> (car (entsel)) return ename

-->(vlax-ename->vla-object ename) return 1 activex object

--> (vla-get....) lấy 1 property nào đấy của vlaobj

-->(vla-put...) đặt 1 property nào đấy của vlaobj theo giá trị mình muốn.

--> muốn xem object có những property gì thì dùng (vlax-dump-object vlaobj)

Tìm hiểu sâu hơn thì ngcuu về ActiveX của Window. Vlisp có thể control ActiveX object trong win của tất cả các phần mềm: word, excell, .......

Tạm thế còn lại hóng các repply khác. ^_^

 

^^ hảo la e ngộ ra được vài thứ rồi hihi

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ặng bạn cái hàm con nhập keyword với giá trị default, bạn có thể để nó làm biến hệ thống nếu muốn lưu lại cho lần nhập sau:

(defun keyword (key default promp / str1 str2 str3 str4)
  (setq str1 (apply 'strcat (mapcar (function (lambda (x) (strcat x " "))) key)))
  (setq str2 (apply 'strcat (mapcar (function (lambda (x) (strcat x "/"))) key)))
  (setq str1 (substr str1 1 (1- (strlen str1))))
  (setq str2 (substr str2 1 (1- (strlen str2))))
  (initget str1)
  (setq str3 (strcat "\n" promp " [" str2 "] <" default "> "))
  (if (not (setq str4 (getkword str3)))
    default
    str4
    )
  )

Cú pháp:

(setq pheptinh (keyword (list "+" "-" "*" /") "+" "Nhap phep tinh"))

Đặt biến pheptinh làm biến hệ thống là xong.

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  

×