PGScrollFrame
from panda3d.core import PGScrollFrame
- class PGScrollFrame
Bases:
Bases:
PGVirtualFrame,PGSliderBarNotifyThis is a special kind of frame that pretends to be much larger than it actually is. You can scroll through the frame, as if you’re looking through a window at the larger frame beneath. All children of this frame node are scrolled and clipped as if they were children of the larger, virtual frame.
This is implemented as a specialization of
PGVirtualFrame, which handles the meat of the virtual canvas. This class adds automatic support for scroll bars, and restricts the virtual transform to translate only (no scale or rotate).Inheritance diagram
- property auto_hide bool
- Getter
Returns the auto_hide flag. See
set_auto_hide().- Setter
Sets the auto_hide flag. When this is true, the two scroll bars are automatically hidden if they are not needed (that is, if the virtual frame would fit within the clip frame without them), and they are automatically shown when they are needed.
Setting this flag true forces the manage_pieces flag to also be set true.
- clear_horizontal_slider()
Removes the horizontal scroll bar from control of the frame. It is your responsibility to actually remove or hide the object itself.
- clear_vertical_slider()
Removes the vertical scroll bar from control of the frame. It is your responsibility to actually remove or hide the object itself.
- clear_virtual_frame()
Removes the virtual frame from the item. This effectively sets the virtual frame to the same size as the clip frame. Scrolling will no longer be possible.
- get_auto_hide() bool
Returns the auto_hide flag. See
set_auto_hide().
- static get_class_type() TypeHandle
- get_horizontal_slider() PGSliderBar
Returns the
PGSliderBarthat serves as the horizontal scroll bar for this frame, if any, or NULL if it is not set.
- get_manage_pieces() bool
Returns the manage_pieces flag. See
set_manage_pieces().
- get_vertical_slider() PGSliderBar
Returns the
PGSliderBarthat serves as the vertical scroll bar for this frame, if any, or NULL if it is not set.
- get_virtual_frame() LVecBase4
Returns the bounding rectangle of the virtual frame. See
set_virtual_frame(). Ifhas_virtual_frame()is false, this returns the item’s clip frame.
- has_virtual_frame() bool
Returns true if the virtual frame has a bounding rectangle; see
set_virtual_frame(). MostPGScrollFrameobjects will have a virtual frame.
- property horizontal_slider PGSliderBar
- Getter
Returns the
PGSliderBarthat serves as the horizontal scroll bar for this frame, if any, or NULL if it is not set.- Setter
Sets the
PGSliderBarobject that will serve as the horizontal scroll bar for this frame. It is your responsibility to parent this slider bar to the frame and move it to the appropriate place.
- property manage_pieces bool
- Getter
Returns the manage_pieces flag. See
set_manage_pieces().- Setter
Sets the manage_pieces flag. When this is true, the sub-pieces of the scroll frame–that is, the two scroll bars–are automatically positioned and/or resized when the scroll frame’s overall frame is changed. They are also automatically resized to fill in the gap when one or the other is hidden.
- recompute()
Forces the
PGScrollFrameto recompute itself right now. Normally this should not be required.
- remanage()
Manages the position and size of the scroll bars. Normally this should not need to be called directly.
- set_auto_hide(auto_hide: bool)
Sets the auto_hide flag. When this is true, the two scroll bars are automatically hidden if they are not needed (that is, if the virtual frame would fit within the clip frame without them), and they are automatically shown when they are needed.
Setting this flag true forces the manage_pieces flag to also be set true.
- set_horizontal_slider(horizontal_slider: PGSliderBar)
Sets the
PGSliderBarobject that will serve as the horizontal scroll bar for this frame. It is your responsibility to parent this slider bar to the frame and move it to the appropriate place.
- set_manage_pieces(manage_pieces: bool)
Sets the manage_pieces flag. When this is true, the sub-pieces of the scroll frame–that is, the two scroll bars–are automatically positioned and/or resized when the scroll frame’s overall frame is changed. They are also automatically resized to fill in the gap when one or the other is hidden.
- set_vertical_slider(vertical_slider: PGSliderBar)
Sets the
PGSliderBarobject that will serve as the vertical scroll bar for this frame. It is your responsibility to parent this slider bar to the frame and move it to the appropriate place.
- set_virtual_frame(virtual_frame: LVecBase4)
Sets the bounding rectangle of the virtual frame. This is the size of the large, virtual canvas which we can see only a portion of at any given time.
- set_virtual_frame(left: float, right: float, bottom: float, top: float)
Sets the bounding rectangle of the virtual frame. This is the size of the large, virtual canvas which we can see only a portion of at any given time.
- setup(width: float, height: float, left: float, right: float, bottom: float, top: float, slider_width: float, bevel: float)
Creates a
PGScrollFramewith the indicated dimensions, and the indicated virtual frame.
- property vertical_slider PGSliderBar
- Getter
Returns the
PGSliderBarthat serves as the vertical scroll bar for this frame, if any, or NULL if it is not set.- Setter
Sets the
PGSliderBarobject that will serve as the vertical scroll bar for this frame. It is your responsibility to parent this slider bar to the frame and move it to the appropriate place.
- property virtual_frame LVecBase4
- Getter
Returns the bounding rectangle of the virtual frame. See
set_virtual_frame(). Ifhas_virtual_frame()is false, this returns the item’s clip frame.- Setter
Sets the bounding rectangle of the virtual frame. This is the size of the large, virtual canvas which we can see only a portion of at any given time.
Sets the bounding rectangle of the virtual frame. This is the size of the large, virtual canvas which we can see only a portion of at any given time.
