LL18 WaitCursor

Hallo,

wie schaffe ich es den Warte-Cursor anzuzeigen, während die Export-Methode läuft?
Der unten stehende C#-Code zeigt den Wartecursor für 2 s an, danach wird der Cursor wieder zum Pfeil-Cursor.

combit.ListLabel18.ListLabel LL = new ListLabel(); exportConfig = new ExportConfiguration(..... Cursor.Current = Cursors.WaitCursor; Thread.Sleep(2000); LL.Export(exportConfig); Cursor.Current = Cursors.Default;

Vielen Dank für Eure Hilfe.

Thomas

Einem anderen Fenster einen Cursor beizubringen ist nicht-trivial. Denn dann mußt Du es subclassen und auf WM_SETCURSOR und evtl WM_MOUSEMOVE reagieren.

Nee, besser, Du fängst den Menü-Event 116 ab (“Speichern As”), zeigst eine modale Wartebox, rufst den Export auf (SendMessage(LS_VIEWERCONTROL_SAVE_TO_FILE)), und entfernst dann die Wartebox wieder.

So zumindest unter C++ - die .NET-Interpretation is Dir überlassen.

Paulchen

Hallo Paulchen,

welches ‘andere’ Fenster meinst Du?

Aus meinem Verständnis erzeuge ich kein neues Fenster wenn ich ein LL-Objekt instanziere und dessen Export-Methode aufrufe.

Wie gesagt ich bin weder im Design() noch habe ich ein Preview-Control offen.

Tom

Ich dachte, Du meinst das Preview-Control.

Magst Du den Fortschrittsdialog von combit nicht? Wenn die Ausgabe modal sein soll, d.h. Deine Applikation keine weiteren Arbeiten erlauben darf, bis der Export fertig ist, disable das Fenster, dann sollte das mit dem Cursor erledigt sein (verhindert Benutzer-Nachrichten wie WM_MOUSEMOVE). Aber ein Fortschrittsdialog ist weit besser.

Pauclchen