C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 173 を表示中)
■99516 / )  Re[5]: ディスプレイ外のフォーム右上端の座標の取得方法
□投稿者/ 魔界の仮面弁士 (3331回)-(2022/04/20(Wed) 16:47:35)
No99510 (おうち さん) に返信
> おっしゃる通りで、この手書きの図は、
> AutoScroll=Trueに設定していて、コントロールがフォームのクライアント領域外に出ている場合です。

その場合、破線はタイトルバーの上辺からではなく、
タイトルバーの下辺から生やすべきな気もします。

本当にタイトルバーの上辺で良いのなら、Y 座標は Form の Top で良いと思います。

あるいは、垂直スクロールが含まれる場合、スクロール位置に応じて
計測したい右上座標が上方向に変化して欲しいのでしょうか。

スクロール位置に応じて変わるのであれば、
X 座標については、RectangleToScreen(DisplayRectangle).Right あたりかな?

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
 Text = RectangleToScreen(DisplayRectangle).ToString()
End Sub


No99512 (おうち さん) に返信
>本当に欲しいのは、フォーム内に含まれる全コントロールの
>最も右端のクライアント座標なんじゃないですか?

仮にそうだとしても、AutoScrollMargin あたりも考慮する必要がありそう。
解決済み
返信 編集キー/


管理者用

- Child Tree -