1
0
mirror of https://github.com/lvgl/lvgl.git synced 2025-01-14 06:42:58 +08:00
lvgl/docs/widgets/win.rst
2023-04-27 19:47:13 +02:00

77 lines
1.9 KiB
ReStructuredText

Window (lv_win)
===============
Overview
********
The Window is container-like object built from a header with title and
buttons and a content area.
Parts and Styles
****************
The Window is built from other widgets so you can check their
documentation for details:
- Background: `lv_obj </widgets/obj>`__
- Header on the background: `lv_obj </widgets/obj>`__
- Title on the header: `lv_label </widgets/label>`__
- Buttons on the header: `lv_btn </widgets/btn>`__
- Content area on the background: `lv_obj </widgets/obj>`__
Usage
*****
Create a Window
---------------
:cpp:expr:`lv_win_create(parent, header_height)` creates a Window with an empty
header.
Title and buttons
-----------------
Any number of texts (but typically only one) can be added to the header
with :cpp:expr:`lv_win_add_title(win, "The title")`.
Control buttons can be added to the window's header with
:cpp:expr:`lv_win_add_btn(win, icon, btn_width)`. ``icon`` can be any image
source, and ``btn_width`` is the width of the button.
The title and the buttons will be added in the order the functions are
called. So adding a button, a text and two other buttons will result in
a button on the left, a title, and 2 buttons on the right. The width of
the title is set to take all the remaining space on the header. In other
words: it pushes to the right all the buttons that are added after the
title.
Get the parts
*************
:cpp:expr:`lv_win_get_header(win)` returns a pointer to the header,
:cpp:expr:`lv_win_get_content(win)` returns a pointer to the content container
to which the content of the window can be added.
Events
******
No special events are sent by the windows, however events can be added
manually to the return value of :cpp:func:`lv_win_add_btn`.
Learn more about :ref:`events`.
Keys
****
No *Keys* are handled by the window.
Learn more about :ref:`indev_keys`.
Example
*******
.. include:: ../examples/widgets/win/index.rst
API
***