Hallo,
ich habe mir eine Procedure OpenQueryInThread(...) geschrieben. Diese erstellt einen geeigneten Thread und wartet dann.
Wenn ich dann dafür sorge, dass im gerade offenen Dialog nichts mehr gemacht werden kann, habe ich bisher keine Probleme festgestellt, wenn ich
Delphi-Quellcode:
...
Q.Open; --> OpenQueryInThread(Q);
...
ausgetauscht habe.
Man sollte das nur benutzen, wenn es wirklich länger dauert, da der Thread Verzögerungen verursacht.