2011-08-31 15 views

答えて

0

オペレーティングシステムによって境界が異なるため、優雅なソリューションがあるかどうかわかりません。

私の提案は、

  • はマウスcursor's positionを取得描かれるたびに、現在および以前のウィンドウサイズの間の差を計算するために

    • です。
    • ウィンドウXが変更された場合、使用されている境界線は、おそらくマウスカーソルが最も近いところで左か右でしょう。 Yが変更された場合は、おそらくカーソルが一番上または下の境界になります。
    • 両方が変更された場合、マウスカーソルが最も近い隅がおそらくそれです。

    コーナーケースが少し出現することがあります。たとえば、キーボードを使用して一部のシステムでウィンドウのサイズを変更することができます。また、ユーザーがウィンドウを格納するには低すぎる解像度に変更した場合など、プログラムによってサイズを変更することも可能です。これらのことは、ほとんどの場合、サイズ変更が行われている間にマウスボタンがクリックされたことを検出することによって処理できます。

    また、コーナーからの幅または高さのサイズを変更することもできます。このような場合、実際にコーナーにあるかどうかを判断するためのコーナーからのマウス距離のしきい値を選択する必要があります。

    Window Geometry picture from Nokia

  • 関連する問題