我在辅助表单中有一个进程,可能需要25秒左右,并且希望阻止用户关闭窗口而不单击“取消进程”按钮。
如果他们点击屏幕右上角的红色X,那么在该过程完成之后就没有任何事情发生,然后它就会砰然关闭。
我尝试设置一个布尔值,直到进程完成或取消,但它仍然等待进程完成并且slams关闭。
如何捕获红色-X点击并告诉用户等待或取消?
答案 0 :(得分:0)
如果你想阻止' X'从关闭表单开始,将处理程序放在 protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
],
'api' => [
'throttle:60,1',
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
],
];
。
OnCloseQuery
如果您不希望您的处理过程阻止主窗口的UI,那么您需要将其放在单独的线程中。
我建议使用OmniThreadLibrary。