Struct egui::containers::ScrollArea [−][src]
pub struct ScrollArea { /* fields omitted */ }
Expand description
Add vertical scrolling to a contained Ui
.
Implementations
Will make the area be as high as it is allowed to be (i.e. fill the Ui
it is in)
Use f32::INFINITY
if you want the scroll area to expand to fit the surrounding Ui
If false
(default), the scroll bar will be hidden when not needed/
If true
, the scroll bar will always be displayed even if not needed.
A source for the unique Id
, e.g. .id_source("second_scroll_area")
or .id_source(loop_index)
.
Set the vertical scroll offset position.
See also: Ui::scroll_to_cursor
and
Response::scroll_to_me
Control the scrolling behavior
If true
(default), the scroll area will respond to user scrolling
If false
, the scroll area will not respond to user scrolling
This can be used, for example, to optionally freeze scrolling while the user
is inputing text in a TextEdit
widget contained within the scroll area
Show the ScrollArea
, and add the contents to the viewport.
If the inner area can be very long, consider using Self::show_rows
instead.
Efficiently show only the visible part of a large number of rows.
let text_style = egui::TextStyle::Body; let row_height = ui.fonts()[text_style].row_height(); // let row_height = ui.spacing().interact_size.y; // if you are adding buttons instead of labels. let num_rows = 10_000; egui::ScrollArea::auto_sized().show_rows(ui, row_height, num_rows, |ui, row_range| { for row in row_range { let text = format!("Row {}/{}", row + 1, num_rows); ui.label(text); } });
This can be used to only paint the visible part of the contents.
add_contents
is past the viewport, which is the relative view of the content.
So if the passed rect has min = zero, then show the top left content (the user has not scrolled).
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ScrollArea
impl Send for ScrollArea
impl Sync for ScrollArea
impl Unpin for ScrollArea
impl UnwindSafe for ScrollArea
Blanket Implementations
Mutably borrows from an owned value. Read more