1

さて、私はボタンを持っています。これは、いくつかの設定によって決定されるさまざまなサイズで表示されます。

ボタンに画像を表示したいと思います。描画できる長方形を取得するにはどうすればよいですか?

button.DisplayRectangleまたはをクエリbutton.ClientRectangleすると、ボタンの正確なサイズが返されます。しかし、ボタンには描画できない境界線などがあるため、これは間違っています。

ドキュメントからわかるDisplayRectangleように、境界線や余白などを除いて、描画できる四角形のみを返す必要がありますか?

私が欲しいものを手に入れる方法はありますか?

アップデート:

Douglas Barbin からの回答により、実際にプロパティSystemInformationを持つクラスを確認することができました。Border3DSize

それでも計算したら

Dim size = New Size(ctrl.Width - SystemInformation.Border3DSize.Width * 2, _
    ctrl.Height - SystemInformation.Border3DSize.Height * 2)

私のディスプレイでは、実際に画像に完全に収まるまでにまだいくつかの(正確には2つの)ピクセルが欠けています。

4

1 に答える 1