AccessibleObject.Bounds プロパティ
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)



Bounds プロパティは、オブジェクトの境界を表す四角形を画面座標で取得します。オブジェクトの形が四角形以外の場合、このプロパティは、オブジェクト領域全体が完全に収まる最小の四角形を表します。このため、リスト ビュー項目など、四角形以外のオブジェクトでは、HitTest メソッドを呼び出してテストをしたときに、オブジェクトの境界を表す四角形の座標がヒットしないことがあります。これは、HitTest では、ピクセルに基づいてオブジェクトの境界が判断されるためです。
継承時の注意 オブジェクトがシステム コントロールをラップしている場合、既定の実装はユーザー補助オブジェクトの外接する四角形を返します。これ以外の場合は、Rectangle.Empty を返します。表示可能なユーザー補助オブジェクトはすべて、このメソッドをサポートする必要があります。サウンド オブジェクトは、このメソッドをサポートしません。
ユーザー補助情報を公開する AccessibleObject クラスおよび Control.ControlAccessibleObject クラスを使用して、ユーザー補助対応のチャート コントロールを作成する方法の例を次に示します。コントロールは、凡例に沿って 2 つの曲線をプロットします。ControlAccessibleObject から派生された ChartControlAccessibleObject クラスは、チャート コントロールの独自のユーザー補助情報を提供することを目的として、CreateAccessibilityInstance メソッドで使用します。チャートの凡例は実際の Control ベースのコントロールではなく、チャート コントロールによって描画されるため、組み込みのユーザー補助情報は含まれていません。このため、ChartControlAccessibleObject クラスは、GetChild メソッドをオーバーライドして、凡例の各部分のユーザー補助情報を表す CurveLegendAccessibleObject を返します。ユーザー補助対応のアプリケーションでこのコントロールが使用された場合、このコントロールは必要なユーザー補助情報を提供できます。
Bounds プロパティをオーバーライドする例を次に示します。コード例全体については、AccessibleObject クラスの概要を参照してください。
' Inner class CurveLegendAccessibleObject represents accessible information ' associated with the CurveLegend object. Public Class CurveLegendAccessibleObject Inherits AccessibleObject Private curveLegend As CurveLegend Public Sub New(curveLegend As CurveLegend) Me.curveLegend = curveLegend End Sub 'New ' Private property that helps get the reference to the parent ChartControl. Private ReadOnly Property ChartControl() As ChartControlAccessibleObject Get Return CType(Parent, ChartControlAccessibleObject) End Get End Property ' Friend helper function that returns the ID for this CurveLegend. Friend ReadOnly Property ID() As Integer Get Dim i As Integer For i = 0 To (ChartControl.GetChildCount()) - 1 If ChartControl.GetChild(i) Is Me Then Return i End If Next i Return - 1 End Get End Property ' Gets the Bounds for the CurveLegend. This is used by accessibility programs. Public Overrides ReadOnly Property Bounds() As Rectangle Get ' The bounds is in screen coordinates. Dim loc As Point = curveLegend.Location Return New Rectangle(curveLegend.chart.PointToScreen(loc), curveLegend.Size) End Get End Property ' Gets or sets the Name for the CurveLegend. This is used by accessibility programs. Public Overrides Property Name() As String Get Return curveLegend.Name End Get Set curveLegend.Name = value End Set End Property ' Gets the Curve Legend Parent's Accessible object. ' This is used by accessibility programs. Public Overrides ReadOnly Property Parent() As AccessibleObject Get Return curveLegend.chart.AccessibilityObject End Get End Property ' Gets the role for the CurveLegend. This is used by accessibility programs. Public Overrides ReadOnly Property Role() As AccessibleRole Get Return System.Windows.Forms.AccessibleRole.StaticText End Get End Property ' Gets the state based on the selection for the CurveLegend. ' This is used by accessibility programs. Public Overrides ReadOnly Property State() As AccessibleStates Get Dim stateTemp As AccessibleStates = AccessibleStates.Selectable If curveLegend.Selected Then stateTemp = stateTemp Or AccessibleStates.Selected End If Return stateTemp End Get End Property ' Navigates through siblings of this CurveLegend. This is used by accessibility programs. Public Overrides Function Navigate(navdir As AccessibleNavigation) As AccessibleObject ' Use the Friend NavigateFromChild helper function that exists ' on ChartControlAccessibleObject. Return ChartControl.NavigateFromChild(Me, navdir) End Function ' Selects or unselects this CurveLegend. This is used by accessibility programs. Public Overrides Sub [Select](selection As AccessibleSelection) ' Use the internal SelectChild helper function that exists ' on ChartControlAccessibleObject. ChartControl.SelectChild(Me, selection) End Sub End Class 'CurveLegendAccessibleObject
// Inner class CurveLegendAccessibleObject represents accessible information // associated with the CurveLegend object. public class CurveLegendAccessibleObject : AccessibleObject { private CurveLegend curveLegend; public CurveLegendAccessibleObject(CurveLegend curveLegend) : base() { this.curveLegend = curveLegend; } // Private property that helps get the reference to the parent ChartControl. private ChartControlAccessibleObject ChartControl { get { return Parent as ChartControlAccessibleObject; } } // Internal helper function that returns the ID for this CurveLegend. internal int ID { get { for(int i = 0; i < ChartControl.GetChildCount(); i++) { if (ChartControl.GetChild(i) == this) { return i; } } return -1; } } // Gets the Bounds for the CurveLegend. This is used by accessibility programs. public override Rectangle Bounds { get { // The bounds is in screen coordinates. Point loc = curveLegend.Location; return new Rectangle(curveLegend.chart.PointToScreen(loc) , curveLegend.Size); } } // Gets or sets the Name for the CurveLegend. This is used by accessibility programs. public override string Name { get { return curveLegend.Name; } set { curveLegend.Name = value; } } // Gets the Curve Legend Parent's Accessible object. // This is used by accessibility programs. public override AccessibleObject Parent { get { return curveLegend.chart.AccessibilityObject; } } // Gets the role for the CurveLegend. This is used by accessibility programs. public override AccessibleRole Role { get { return AccessibleRole.StaticText; } } // Gets the state based on the selection for the CurveLegend. // This is used by accessibility programs. public override AccessibleStates State { get { AccessibleStates state = AccessibleStates.Selectable; if (curveLegend.Selected) { state |= AccessibleStates.Selected; } return state; } } // Navigates through siblings of this CurveLegend. This is used by accessibility programs. public override AccessibleObject Navigate(AccessibleNavigation navdir) { // Uses the internal NavigateFromChild helper function that exists // on ChartControlAccessibleObject. return ChartControl.NavigateFromChild(this, navdir); } // Selects or unselects this CurveLegend. This is used by accessibility programs. public override void Select(AccessibleSelection selection) { // Uses the internal SelectChild helper function that exists // on ChartControlAccessibleObject. ChartControl.SelectChild(this, selection); } }
// Inner class CurveLegendAccessibleObject represents accessible information // associated with the CurveLegend object. public: ref class CurveLegendAccessibleObject: public AccessibleObject { private: CurveLegend^ curveLegend; public: CurveLegendAccessibleObject( CurveLegend^ curveLegend ) : AccessibleObject() { this->curveLegend = curveLegend; } private: property ChartControlAccessibleObject^ ChartControl { // Private property that helps get the reference to the parent ChartControl. ChartControlAccessibleObject^ get() { return dynamic_cast<ChartControlAccessibleObject^>(Parent); } } internal: property int ID { // Internal helper function that returns the ID for this CurveLegend. int get() { for ( int i = 0; i < ChartControl->GetChildCount(); i++ ) { if ( ChartControl->GetChild( i ) == this ) { return i; } } return -1; } } public: property Rectangle Bounds { // Gets the Bounds for the CurveLegend. This is used by accessibility programs. virtual Rectangle get() override { // The bounds is in screen coordinates. Point loc = curveLegend->Location; return Rectangle(curveLegend->chart->PointToScreen( loc ),curveLegend->Size); } } property String^ Name { // Gets or sets the Name for the CurveLegend. This is used by accessibility programs. virtual String^ get() override { return curveLegend->Name; } virtual void set( String^ value ) override { curveLegend->Name = value; } } property AccessibleObject^ Parent { // Gets the Curve Legend Parent's Accessible object. // This is used by accessibility programs. virtual AccessibleObject^ get() override { return curveLegend->chart->AccessibilityObject; } } property System::Windows::Forms::AccessibleRole Role { // Gets the role for the CurveLegend. This is used by accessibility programs. virtual System::Windows::Forms::AccessibleRole get() override { return ::AccessibleRole::StaticText; } } property AccessibleStates State { // Gets the state based on the selection for the CurveLegend. // This is used by accessibility programs. virtual AccessibleStates get() override { AccessibleStates state = AccessibleStates::Selectable; if ( curveLegend->Selected ) { state = static_cast<AccessibleStates>(state | AccessibleStates::Selected); } return state; } } // Navigates through siblings of this CurveLegend. This is used by accessibility programs. virtual AccessibleObject^ Navigate( AccessibleNavigation navdir ) override { // Uses the internal NavigateFromChild helper function that exists // on ChartControlAccessibleObject. return ChartControl->NavigateFromChild( this, navdir ); } // Selects or unselects this CurveLegend. This is used by accessibility programs. virtual void Select( AccessibleSelection selection ) override { // Uses the internal SelectChild helper function that exists // on ChartControlAccessibleObject. ChartControl->SelectChild( this, selection ); } };
// Inner class CurveLegendAccessibleObject represents accessible // information associated with the CurveLegend object. public static class CurveLegendAccessibleObject extends AccessibleObject { private CurveLegend curveLegend; public CurveLegendAccessibleObject(CurveLegend curveLegend) { this.curveLegend = curveLegend; } //CurveLegendAccessibleObject // Private property that helps get the reference to the parent // ChartControl. /** @property */ private ChartControlAccessibleObject get_ChartControl() { return (ChartControlAccessibleObject)get_Parent(); } //get_ChartControl // Internal helper function that returns the ID for this CurveLegend. /** @property */ int get_ID() { for (int i = 0; i < get_ChartControl().GetChildCount(); i++) { if (get_ChartControl().GetChild(i).Equals(this)) { return i; } } return -1; } //get_ID // Gets the Bounds for the CurveLegend. // This is used by accessibility programs. /** @property */ public Rectangle get_Bounds() { // The bounds is in screen coordinates. Point loc = curveLegend.get_Location(); return new Rectangle(curveLegend.chart.PointToScreen(loc) , curveLegend.get_Size()); } //get_Bounds // Gets or sets the Name for the CurveLegend. // This is used by accessibility programs. /** @property */ public String get_Name() { return curveLegend.get_Name(); } //get_Name /** @property */ public void set_Name(String value) { curveLegend.set_Name(value); } //set_Name // Gets the Curve Legend Parent's Accessible object. // This is used by accessibility programs. /** @property */ public AccessibleObject get_Parent() { return curveLegend.chart.get_AccessibilityObject(); } //get_Parent // Gets the role for the CurveLegend. // This is used by accessibility programs. /** @property */ public AccessibleRole get_Role() { return AccessibleRole.StaticText; } //get_Role // Gets the state based on the selection for the CurveLegend. // This is used by accessibility programs. /** @property */ public AccessibleStates get_State() { AccessibleStates state = AccessibleStates.Selectable; if (curveLegend.get_Selected()) { state = state | AccessibleStates.Selected; } return state; } //get_State // Navigates through siblings of this CurveLegend. // This is used by accessibility programs. public AccessibleObject Navigate(AccessibleNavigation navDir) { // Uses the internal NavigateFromChild helper function // that exists on ChartControlAccessibleObject. return get_ChartControl().NavigateFromChild(this, navDir); } //Navigate // Selects or unselects this CurveLegend. // This is used by accessibility programs. public void Select(AccessibleSelection selection) { // Uses the internal SelectChild helper function that exists // on ChartControlAccessibleObject. get_ChartControl().SelectChild(this, selection); } //Select } //CurveLegendAccessibleObject

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


AccessibleObject クラス
AccessibleObject メンバ
System.Windows.Forms 名前空間
DefaultAction
Description
Help
KeyboardShortcut
Name
Parent
Role
State
Value
- AccessibleObject.Bounds プロパティのページへのリンク