Ich habe Grid-Kontrolle auf Formular und wenn aktuelle Datensatzänderung ich muss RTF laden in DB gespeichert. Es funktioniert im Allgemeinen gut, aber wenn ich Datensätze wechsle, kann ich Änderungen des Mauscursors zu Sanduhr und zurück zu regulär sehen:
%Vor%Wenn ich "SelectQuery.Open;" dann schaltet der Cursor nicht um. Ich vermutete, dass es eine Option in TFDQuery (oder Verbindung) geben sollte, aber ich kann nichts finden. Irgendwelche Hilfe?
AKTUALISIEREN. Wie TLama vorgeschlagen hat, habe ich WaitCursor: TFDGUIxWaitCursor auf meinem Formular (ein Platz für App) platziert und benutze es so:
%Vor%UPDATE2: Zwei weitere Möglichkeiten, dies zu tun.
TFDQuery.ResourceOptions.SilentMode=True
(einfachste Möglichkeit, Sanduhr-Cursor für bestimmte Abfragen zu deaktivieren, Eigenschaftenname ist schlecht, aber nach doc blockiert es keine Dialoge, nur Änderungen des Cursors). FADGUIxSilentMode=True
von der Unit FireDAC.UI.Intf (nicht die beste, aber wahrscheinlich einfachste Möglichkeit, Änderungen des Cursors global für FireDAC zu deaktivieren). Dies ist in this FAQ
festgelegt:
Wie kann ich die SQL Sanduhr komplett ausschalten?
a) Um den Wartecursor für eine Anwendung vollständig zu deaktivieren, verwenden Sie TFDGUIxWaitCursor mit Provider = 'Konsole'. Die "Konsole" Der Provider enthält eine leere Warte-Cursor-Implementierung und die Wartezeit Der Cursor wird von FireDAC nicht mehr angezeigt. Wenn ein Mauszeiger still ist ändern, dann überprüfen Sie, dass nur FireDAC.ConsoleUI.Wait Einheit enthalten ist in Ihre Anwendung und FireDAC.VCLUI.Wait und FireDAC.FMXUI.Wait Sind nicht enthalten. Beachten Sie, dass Sie nicht in der Lage sind, die Warten Sie den Cursor erneut.
b) Um den Wartecursor zu deaktivieren, aber um ihn zu aktivieren Verwenden Sie später erneut den folgenden Code:
%Vor%oder
%Vor%c) Um den Wartecursor und die FireDAC-Dialoge zu deaktivieren, aber den Möglichkeit, sie später erneut zu aktivieren, legen Sie den FDManager.SilentMode fest Eigenschaft auf Wahr . Dadurch werden alle Warteschleifen und FireDAC deaktiviert Dialoge, einschließlich:
- Der Fehlerdialog
- Async-Ausführungsdialog
- Anmeldedialog
- Script-Fortschrittsdialog
Einstellung ResourceOptions.SilentMode auf True deaktiviert nur warten Cursor.
Da Sie diesen Cursor nur für die Ausführung dieser Abfrage deaktivieren möchten, verwenden Sie die Option b und umschließen Sie Ihren Code mit folgendem Code:
%Vor%