※この翻訳ドキュメントはスクリプトによって出力・同期されています。内容が怪しそうな場合はGitHubにissueを追加したり英語の原文の確認をお願いします。
DisplayObject クラスの parent インターフェイス¶
このページではDisplayObject
クラスのparent
関係のインターフェイス(parent
属性とremove_from_parent
メソッド)について説明します。
各インターフェイスの概要¶
parent
属性はgetterのみのインターフェイスとなります。この属性値はStage
のインスタンスもしくはSprite
などのコンテナのインスタンスとなります。
import apysc as ap
ap.Stage(
background_color=ap.Color("#333"),
stage_width=150,
stage_height=200,
stage_elem_id="stage",
)
sprite: ap.Sprite = ap.Sprite()
rectangle: ap.Rectangle = sprite.graphics.draw_rect(x=50, y=50, width=50, height=50)
assert isinstance(sprite.parent, ap.Stage)
assert isinstance(sprite.graphics.parent, ap.Sprite)
assert isinstance(rectangle.parent, ap.Graphics)
remove_from_parent
インターフェイスは自身のインスタンスを親のインスタンスから取り除き、画面上に表示されない状態にします。
remove_from_parent インターフェイスの基本的な使い方¶
remove_from_parent
メソッドのインターフェイス(引数を必要としません)は自身のインスタンスを親のインスタンスから取り除きます。取り除かれたインスタンスは他の親(コンテナ)のインスタンスへと追加されるまで画面に表示されません。
import apysc as ap
ap.Stage(
background_color=ap.Color("#333"),
stage_width=150,
stage_height=150,
stage_elem_id="stage",
)
sprite: ap.Sprite = ap.Sprite()
rectangle: ap.Rectangle = sprite.graphics.draw_rect(x=50, y=50, width=50, height=50)
# Remove the rectangle from the parent, and nothing displays
# on the stage.
rectangle.remove_from_parent()
ap.save_overall_html(dest_dir_path="display_object_remove_from_parent_basic_usage/")
関連資料¶
parent API¶
特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。
[インターフェイス概要]
add_childやremove_childなどのインターフェイスを持った親のインスタンスを取得します。
[返却値]
parent
: any parent instance (ChildMixIn) or Noneadd_child
やremove_child
などのインターフェイスを持っている親のインスタンス。もしこのインスタンスが親を持っていない(画面に追加されていない)場合、このインターフェイスはNoneを返却します。
[コードサンプル]
>>> import apysc as ap
>>> stage: ap.Stage = ap.Stage()
>>> sprite_1: ap.Sprite = ap.Sprite()
>>> sprite_1.graphics.begin_fill(color=ap.Color("#0af"))
>>> rectangle: ap.Rectangle = sprite_1.graphics.draw_rect(
... x=50, y=50, width=50, height=50
... )
>>> sprite_2: ap.Sprite = ap.Sprite()
>>> sprite_2.add_child(rectangle)
>>> rectangle.parent == sprite_2
True
remove_from_parent API¶
特記事項: このAPIドキュメントはドキュメントビルド用のスクリプトによって自動で生成・同期されています。そのためもしかしたらこの節の内容は前節までの内容と重複している場合があります。
[インターフェイスの構造] remove_from_parent(self) -> None
[インターフェイス概要]
親のインスタンスからこのインスタンスを取り除きます。
[エラー発生条件]
ValueError: もしも親のインスタンスがNoneの場合(親の無い状態の場合)。