私はC#-Winformでコーディングを使っていくつかのメカニズムを作成しなければならないという状況があります。特定のwinformを起動すると指定された秒数以上(例えば10秒) (私はフォームの表示を完全に取得しない限り、物事のアヤックスローダーの種類)。 (このフォームは、多くの計算の後にデータを表示するので、その間にいくつかのローダーを表示したいと考えています)。winformの起動に5秒以上かかるかどうかを確認する方法?
I successfully designed the circle like loader
。問題は次のとおりです。
(1)フォームの起動には10 seconds
以上が必要ですか?だから私はローダーを起動します。
(2.)別の問題は、プロジェクトが非常に大きく、個々のフォームごとにローダーのコードを書く代わりに、共通のすべてのフォームで機能させる必要があることです。現在起動されているフォームに10秒以上かかると、ローダーが表示されます(各フォームに表示するコードを書き込まずに10秒以上かかると、すべてのフォームで動作するはずです)フォームとして、ローダーが表示されます。
これら二つの機能を達成するためにどのように?
なぜ10秒を待つのか?撮影時間が10.5秒の場合はどうなりますか?ユーザーが私がフォームを完了するのを待っていて、0.5秒間だけ私はしばらく時間がかかるという表示を得る。あなたが行う必要がある計算の数に基づいてローダーを表示することはできませんか?また、コンストラクターで重い作業はどこで行われますか? OnLoad?このようにコードを表示して、これまでに何を出してきたのですか(タイマー?) –
なぜこのようなことに気をつけたのですか?標準的なイディオムは、*ビジー*カーソルを表示することです。確かにあなたはそれを見ました。ロード操作を行う前に表示するだけで、ロードが完了すると、ビジーカーソルは自動的に消えます。または、少し読み込んだアニメーションを表示して、タスクを実行し、読み込まれたアニメーションが終了したらそれを削除することができます。時間切れコードを書くのは価値がありません。 –
@CodyGrayプロジェクトが非常に大きいので、個々のフォームにコードを書くことはできません。ローダーをコーディングするすべてのフォームではなく、グローバルに達成するためのソリューションはありますか? – user3085082