Rekomendowane odpowiedzi

Opublikowano

Witam,

takie przykładowe okienko DCL - systemowe.

Istnieje zastępcze dla ZwCAD?

(load_dialog "ACAD") - tutaj widzę możliwość taką:

(load_dialog "gpdialog.dcl")

lecz dla:

(new_dialog "acad_txtedit" id)

już nie znalazłem...

Oczywiście zdaję sobie sprawę, że utworzenie takiego okna od podstaw w DCL jest do zrobienia,

jednakże skoro istnieją inne możliwości, to czemu z nich nie skorzystać...

(defun LM:EditBox ( string / id )
 (and
   (< 0 (setq id (load_dialog "ACAD")))
   (new_dialog "acad_txtedit" id)
   (set_tile    "text_edit"  string)
   (action_tile "text_edit" "(setq string $value)")
   (if (zerop (start_dialog)) (setq string nil))
 )
 (if (< 0 id) (unload_dialog id))
 string
)

wywołanie:

(LM:EditBox "To jest test")

pozdrawiam

Opublikowano
Witam,

takie przykładowe okienko DCL - systemowe.

Istnieje zastępcze dla ZwCAD?

(load_dialog "ACAD") - tutaj widzę możliwość taką:

(load_dialog "gpdialog.dcl")

lecz dla:

(new_dialog "acad_txtedit" id)

już nie znalazłem...

Oczywiście zdaję sobie sprawę, że utworzenie takiego okna od podstaw w DCL jest do zrobienia,

jednakże skoro istnieją inne możliwości, to czemu z nich nie skorzystać...

(defun LM:EditBox ( string / id )
 (and
   (< 0 (setq id (load_dialog "ACAD")))
   (new_dialog "acad_txtedit" id)
   (set_tile    "text_edit"  string)
   (action_tile "text_edit" "(setq string $value)")
   (if (zerop (start_dialog)) (setq string nil))
 )
 (if (< 0 id) (unload_dialog id))
 string
)

wywołanie:

(LM:EditBox "To jest test")

pozdrawiam

isnieje :) wystarczy skopiowac z autocada plik acad.dcl i zapodac go do Zwcada.

sa tam gotowe definicje kilku okienek systemowych m.in.:

acad_txtedit : dialog {
   label = "Edit Text";
   initial_focus = "text_edit";
   : edit_box {
       label = "Text:";
       key = "text_edit";
       edit_width = 40;
       edit_limit = 2048;
       allow_accept = true;
   }
   ok_cancel;
}

patrz na to:

(lisped ( (lambda (/ C) (setq C "") (foreach % (list 72 97 108 111) (setq C (strcat C (chr %)))))))

j.

Opublikowano
wystarczy skopiowac z autocada plik acad.dcl i zapodac go do Zwcada.

No no no :)

Kopiowanie całości, części lub udostępnianie publiczne kodu, jest niezgodne z licencją ;)

Skoro już jednak znalazłeś źródło tego okna "acad_txtedit", to można na bazie tego stworzyć np. "zwcad_txtedit"...

Swoją drogą może ZwCAD też z czasem doda takie systemowe okienka - się zobaczy.

Tak jak napisałem, samo stworzenie takiego okienka to nie problem - się zastanawiałem czy po prostu ZwCAD ma coś takiego już wbudowane w swoją strukturę.

pozdrawiam

Opublikowano
wystarczy skopiowac z autocada plik acad.dcl i zapodac go do Zwcada.

No no no :)

Kopiowanie całości, części lub udostępnianie publiczne kodu, jest niezgodne z licencją ;)

pozdrawiam

mam nadzieje ze jeszcze nie jada po mnie :wink:

jest tam tego sporo. dodatkowo jeszcze plik base.dcl

j.

Opublikowano
mam nadzieje ze jeszcze nie jada po mnie

jest tam tego sporo. dodatkowo jeszcze plik base.dcl

Zgadza się, jest tych plików kilka i każdy zwiera przykłady ale i niezbędne składniki do tego, aby w AutoCAD w ogóle uruchamiały się okna DCL.

Niemniej jednak są one integralną częścią AutoCADa i kopiowanie ich jest bezprawne ;)

W ZwCAD też istnieją base.dcl oraz gpdialog.dcl ;) tyle, że posiadają dużo mniej przykładów.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się