Table Of Contents
Popup¶
New in version 1.0.7.

The Popup widget is used to create modal popups. By default, the popup will cover the whole “parent” window. When you are creating a popup, you must at a minimum set a Popup.title and a Popup.content widget.
Remember that the default size of a Widget is size_hint=(1, 1). If you don’t want your popup to be fullscreen, either use lower than 1 size hints (for instance size_hint=(.8, .8)) or deactivate the size_hint and use fixed size attributes.
Changed in version 1.4.0: The Popup class now inherits from ModalView. The Popup offers a default layout with a title and a separation bar.
Examples¶
Example of a simple 400x400 Hello world popup:
popup = Popup(title='Test popup',
content=Label(text='Hello world'),
size_hint=(None, None), size=(400, 400))
By default, any click outside the popup will dismiss it. If you don’t want that, you can set Popup.auto_dismiss to False:
popup = Popup(title='Test popup', content=Label(text='Hello world'),
auto_dismiss=False)
popup.open()
To manually dismiss/close the popup, use Popup.dismiss():
popup.dismiss()
The Popup.open() and Popup.dismiss() are bindable. That means you can directly bind the function to an action, e.g., to a button’s on_press:
# create content and assign to the popup
content = Button(text='Close me!')
popup = Popup(content=content, auto_dismiss=False)
# bind the on_press event of the button to the dismiss function
content.bind(on_press=popup.dismiss)
# open the popup
popup.open()
Popup Events¶
There are two events available: on_open when the popup is opening, and on_dismiss when it is closed. For on_dismiss, you can prevent the popup from closing by explictly returning True from your callback:
def my_callback(instance):
print 'Popup', instance, 'is being dismissed, but is prevented!'
return True
popup = Popup(content=Label(text='Hello world'))
popup.bind(on_dismiss=my_callback)
popup.open()
- class kivy.uix.popup.Popup(**kwargs)¶
Bases: kivy.uix.modalview.ModalView
Popup class. See module documentation for more information.
Events : - on_open:
Fired when the Popup is opened
- on_dismiss:
Fired when the Popup is closed. If the callback returns True, the dismiss will be canceled.
- content¶
Content of the popup that is displayed just under the title.
content is a ObjectProperty, default to None.
- separator_color¶
Color used by the separator between title and content.
New in version 1.1.0.
separator_color is a ListProperty, default to [47 / 255., 167 / 255., 212 / 255., 1.]
- separator_height¶
Height of the separator.
New in version 1.1.0.
separator_height is a NumericProperty, default to 2dp.
- title¶
String that represents the title of the popup.
title is a StringProperty, default to ‘No title’.
- title_size¶
Represents the font size of the popup title.
New in version 1.6.0.
title_size is a NumericProperty, default to ‘14sp’.
- class kivy.uix.popup.PopupException¶
Bases: exceptions.Exception
Popup exception, fired when multiple content are added to the popup.
New in version 1.4.0.