► |  | The Racket Graphical Interface Toolkit

1 | Windowing
2 | Windowing Classes
3 | Windowing Functions
4 | Editors
5 | Snip and Style Classes
6 | Editor Classes
7 | Editor Functions
8 | WXME Decoding
9 | Preferences
10 | Dynamic Loading
11 | Startup Actions
12 | Platform Dependencies
| Index

▼ | 2 | Windowing Classes

2.1 | area<%>
2.2 | area-container<%>
2.3 | area-container-window<%>
2.4 | button%
2.5 | canvas<%>
2.6 | canvas%
2.7 | check-box%
2.8 | checkable-menu-item%
2.9 | choice%
2.10 | clipboard-client%
2.11 | clipboard<%>
2.12 | combo-field%
2.13 | control<%>
2.14 | column-control-event%
2.15 | control-event%
2.16 | cursor%
2.17 | dialog%
2.18 | event%
2.19 | frame%
2.20 | gauge%
2.21 | group-box-panel%
2.22 | grow-box-spacer-pane%
2.23 | horizontal-pane%
2.24 | horizontal-panel%
2.25 | key-event%
2.26 | labelled-menu-item<%>
2.27 | list-box%
2.28 | list-control<%>
2.29 | menu%
2.30 | menu-bar%
2.31 | menu-item<%>
2.32 | menu-item%
2.33 | menu-item-container<%>
2.34 | message%
2.35 | mouse-event%
2.36 | pane%
2.37 | panel%
2.38 | popup-menu%
2.39 | printer-dc%
2.40 | radio-box%
2.41 | selectable-menu-item<%>
2.42 | separator-menu-item%
2.43 | scroll-event%
2.44 | slider%
2.45 | subarea<%>
2.46 | subwindow<%>
2.47 | tab-panel%
2.48 | text-field%
2.49 | timer%
2.50 | top-level-window<%>
2.51 | vertical-pane%
2.52 | vertical-panel%
2.53 | window<%>

On this page:

get-font
get-popup-target
set-min-width

Inherited methods:
from menu-item-container<%>
get-items
on-demand

top← prev up next →

> class

> popup-menu% : class?

superclass: object%

extends: | menu-item-container<%>

A popup-menu% object is created without a parent. Dynamically display a popup-menu% with popup-menu in window<%> or popup-menu in editor-admin%.

A popup menu is not a control. A choice% control, however, displays a single value that the user selects from a popup menu. A choice% control’s popup menu is built into the control, and it is not accessible to the programmer.

> > constructor

> > (new popup-menu% |
> > | [ | [title title] |
> > |  | [popdown-callback popdown-callback] |
> > |  | [demand-callback demand-callback] |
> > |  | [font font]]) |

> → (is-a?/c popup-menu%)
> title : (or/c label-string? #f) = #f

> popdown-callback

> :

> ((is-a?/c popup-menu%) (is-a?/c control-event%)
> . -> . any)

> |  |  | = |  | (lambda (p e) (void))

> | demand-callback |  | : |  | ((is-a?/c popup-menu%) . -> . any)
> |  |  | = |  | (lambda (p) (void))

> font : (is-a?/c font%) = normal-control-font

If title is not #f, it is used as a displayed title at the top of the popup menu.

If title contains &, it is handled specially, the same as for menu% titles. A popup menu mnemonic is not useful, but it is supported for consistency with other menu labels.

The popdown-callback procedure is invoked when a popup menu is dismissed. If the popup menu is dismissed without an item being selected, popdown-callback is given a control-event% object with the event type 'menu-popdown-none. If the popup menu is dismissed via an item selection, the item’s callback is invoked first, and then popdown-callback is given a control-event% object with the event type 'menu-popdown.

The demand-callback procedure is called by the default on-demand method with the object itself.

The font argument determines the font for the popup menu’s items.

> > method

> > (send a-popup-menu get-font) → (is-a?/c font%)

Returns the font used for the popup menu’s items, which is optionally supplied when a popup menu is created.

> > method

> > (send a-popup-menu get-popup-target)

> → (or/c (is-a?/c window<%>) (is-a?/c editor<%>) #f)

Returns the context in which the popup menu is currently displayed, or #f if it is not popped up in any window.

The context is set before the on-demand method is called, and it is not removed until after the popup-menu’s callback is invoked. (Consequently, it is also set while an item callback is invoked, if the user selected an item.)

> > method

> > (send a-popup-menu set-min-width width) → void?

> width : (integer-in 0 10000)

Sets the popup menu’s minimum width in pixels.
top← prev up next →