jarekw90 Opublikowano 12 Lutego 2018 Zgłoś Udostępnij Opublikowano 12 Lutego 2018 Witam, Poniżej fragment kodu. Próbuję wykonać pętlę repeat do momentu wskazania przez użytkownika przerwanie przez N lub Esc, chciałbym aby enter było traktowane jako domyślnie T. Niestety w każdym przypadku przerywa wykonywanie programu. Proszę o pomoc. (defun ...... (setq aaa "T") (repeat (if (= aaa "T") (progn ... );end progn );end if (progn (initget "T N") (setq aaa (getkword "Kontynuowac? [T/N] <T>:") ) (if (not aaa) (setq aaa "T")) ) );end repeat ) ;end program Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
kruszynski Opublikowano 12 Lutego 2018 Zgłoś Udostępnij Opublikowano 12 Lutego 2018 Proponuję tak: (defun ZWCAD:GetKWord (init Prompt DefVal / ans OutVal *error*) (defun *error* ( msg / ) (if (not (null msg ) ) (progn (princ "\n ZWCAD:GetKWord : *error*: " ) (princ msg ) (princ "\n") ) ) ) (initget 2 init) (setq ans(vl-catch-all-apply 'getkword (list Prompt))) (if (not(vl-catch-all-error-p ans)) (if ans (progn (if (equal ans "") (setq OutVal DefVal) (setq OutVal ans) ) ) (setq OutVal DefVal) ) ) OutVal ) (setq wybrane (ZWCAD:GetKWord "T N" "Kontynuowac? [T/N] <T>" "T" ) ) jarekw90 1 Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
jarekw90 Opublikowano 12 Lutego 2018 Autor Zgłoś Udostępnij Opublikowano 12 Lutego 2018 Dziękuję, działa. Cytuj Odnośnik do komentarza Udostępnij na innych stronach Więcej opcji udostępniania...
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.