Hello Owen
This problem this inside of a very big project.
It is very difficult for me to separate this now.
As soon as is possible I send for you.
I made a list of steps below.
1 - while SplashForm is presented I click with the mouse in the marked area.
2 - first Form is called and it receives the event of last OnClicked for the splash form.
3 - the second form is called.
Below this the code that controls SplashForm.
;;;This function controls exhibition of SplashForm
(defun JoyDelaySplash (/ wait)
;;;Wait function
(defun wait (seconds / stop)
(setq stop (+ (getvar "DATE") (/ seconds 86400.0)))
(while (> stop (getvar "DATE")))
) ;_ fim de defun
;;;Show SplashForm
(dcl_Form_Show DuctilCAD_SplashForm)
;;;Time of wait
(wait 2)
;;;Close SplashForm
(dcl_Form_Close DuctilCAD_SplashForm)
;;;
(setq JoyTagSplash T
JoyNextDlg 1
) ;_ fim de setq
(vl-propagate 'JoyTagSplash)
(princ)
) ;_ fim de defun
;;; -------------------------------------------------------------------------------------------------------------------
;;;Só executa Inicializacao do quadro Splash se precisar
(if (not JoyTagSplash)
(defun c:DuctilCAD_SplashForm_OnInitialize (/)
;;;Centraliza o quadro
(dcl_Form_Center DuctilCAD_SplashForm)
) ;_ fim de defun
) ;_ fim de if
;;; -------------------------------------------------------------------------------------------------------------------
;;;LOOP
(setq JoyNextDlg 1)
;;;While
(while (/= JoyNextDlg nil)
(cond
((= JoyNextDlg 1)
(setq JoyNextDlg nil)
(if (null JoyTagSplash)
(JoyDelaySplash) ;_ SplashForm
;;;FirstForm
(dcl_Form_Show DuctilCAD_DuctilCAD_MainForm)
) ;_ fim de if
)
) ;_ fim de cond
)