タグ

VBAとmicrosoftに関するducky19999のブックマーク (1)

  • Access Tips #114 DoEventsをパフォーマンスを下げずに使う方法 | T'sWare

    DoEvents関数は、プログラムで占有していた制御をOSに一時的に渡すための関数です。時間のかかるループ処理をコマンドボタンのクリックなどで中止させるような場合、クリック時イベントをWindowsに検出させるためにはこのDoEvents関数が必要となります(その具体的な使用例については「#92 時間のかかる処理を途中で中止できるようにする方法」を参照してください)。 DoEvents関数を用いると、Windowsのイベントキューの内容を調べるためのオーバーヘッドによって極端にパフォーマンスが低下します。ループ処理を途中でキャンセルできる機能よりもその処理時間を優先させたい場合には、DoEvents関数は使わない方が無難です。 しかし、WindowsAPIの「GetInputState」関数を使うと、DoEvents関数を使わないのと同じ程度までパフォーマンスを改善することができます。Do

  • 1