The NcDialog API — Dialog-based console applications (C++)

These are actual screen captures of an NcDialog API application, running in a console window. Screenshots incorporate both the displayed text and the associated color attributes.

Screenshots were captured from GNOME Terminal, version 3.10.2 (16-color) configured to use the terminal definition's "Linux Console" color scheme. The HTML colors are a close approximation of the actual colors displayed in the terminal window.
CSS style definitions for color attributes and formatting are located in 'screenshot-styles.css'.

The dialog used in this example contains thirteen (13) user-interface controls:

  Control Type       Number      Control Function                 
Pushbutton one (1)perform the specified action
Radiobutton three (3)binary choice (yes/no, on/off)
Textbox two (2)enter text data (optionally filtered)
Billboard one (1)display a message stream (read only)
Scrollbox one (1)select an item from a scrolling list (static data)
Scrollext one (1)select an item from a scrolling list (dynamic data)
Dropdown one (1)select an item from an expanding list
Spinner one (1)select a numeric value within a predefined range
Menuwin two (2)multi-level menuing system

For each capture, the user-interface control object which has the input focus is in   Red  .

In the first screenshot, the 'Done' Pushbutton control has the input focus.
The Radiobutton control group indicates that the static test messages written directly into the dialog window are to be displayed as 'Yellow Messages'.
The Dropdown control and the Menuwin controls are in the 'collapsed' state.

The input focus can be moved from one control to another using the 'TAB' / 'SHIFT+TAB' keys, →↑↓← arrow keys, OR by selecting a control via its optional 'Hotkey'. The control's Hotkey is designated by the underlined character in its title. For instance the 'Done' pushbutton's Hotkey is the 'D' character:   DONE  
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
H e r e ' s l o o k i n ' a t y o u , K i d ! I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : H e r e ' s l o o k i n ' a t y o u , K i d !
P r e s i d e n t i a l A p p r o v a l R a t i n g 2 ±
Y o u r R e a l O p i n i o n : A b o u t w h a t w e ' v e c o m e t o e x p e c t .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : P i g e o n s c o o
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

In the next screenshot, we look at the group of Radiobuttons which determine the color of the messages written directly into the dialog window. This is an XOR (Exclusive-OR) group of controls. This means that exactly one member of the group may be selected. In this case the 'Magenta Messages' Radiobutton has been selected, and the static messages have been changed from yellow to magenta.
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
H e r e ' s l o o k i n ' a t y o u , K i d ! I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : H e r e ' s l o o k i n ' a t y o u , K i d !
P r e s i d e n t i a l A p p r o v a l R a t i n g 2 ±
Y o u r R e a l O p i n i o n : A b o u t w h a t w e ' v e c o m e t o e x p e c t .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : P i g e o n s c o o
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

In this screenshot, the input focus in on the one-line Textbox control in the upper left corner of the dialog. The cursor is on the second character of the field ('Y'). Note that the message is longer than the field, so not all of the text is visible. Regardless of the visible display area, one-line Textbox controls can contain up to 4096 bytes of UTF-8 data.
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : H e r e ' s l o o k i n ' a t y o u , K i d !
P r e s i d e n t i a l A p p r o v a l R a t i n g 2 ±
Y o u r R e a l O p i n i o n : A b o u t w h a t w e ' v e c o m e t o e x p e c t .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : P i g e o n s c o o
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

In this screenshot, the multi-line Textbox control has input focus, and the cursor is positioned at the end of the text data. Again, the data are larger than the field, so not all the text is visible. Multi-line Textbox controls dynamically allocate space for text according to a formula based on the number of display rows/columns, up to approximately three times the number of bytes of displayed data, or 4096 bytes of UTF-8 text data, whichever is greater.


Note that the Billboard control to the right of the multi-line Textbox control is Read-only, and therefore cannot receive the input focus. A Billboard is very much like a Textbox control; however, it has several unique properties, such as the ability to programatically insert additional text of any color, which implements an auto-scroll effect for displaying often-updated user messages. A Billboard is typically under the control of a separate execution thread which is responsible for periodically updating the control's contents. Of course, this dynamic modification is not visible in a screenshot.

Please refer to the 'Dialog4' test application included with the NcDialog API package
    for examples of a Billboard control managed by a separate execution thread.

N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s N o w , n o w . . . H e r e ' s l o o k i n g a t y o u , T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s k i d ! - - R i c k B l a i n e , C a s a b l a n c a ( 1 9 4 2 ) F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 2 ±
Y o u r R e a l O p i n i o n : A b o u t w h a t w e ' v e c o m e t o e x p e c t .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : P i g e o n s c o o
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

Next, let's look at the Spinner control. This control is in the left-center of the dialog window. The Spinner is used to select a numeric value. Values may be either integers or decimal values. The user may scan up and down through the range of values by ones, by 10s, 100s or 1000s, plus Home and End.

In this case, the Spinner is configured for a range between '-1' and '10' and with an initial value of '2'. Each value is assigned to a different static display string. When the user has selected a new value ('5' in this example), then the static display string will be updated (see next screenshot).
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 5 ±
Y o u r R e a l O p i n i o n : A b o u t w h a t w e ' v e c o m e t o e x p e c t .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : P i g e o n s c o o
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

Next, is the Scrollbox control on the left edge of the dialog. The current selection is highlighted. The user may select a new value by scrolling through the list. Note that the list is a static array of display items and may be of any reasonable length, with the number of items simultaneously displayed dictated by the specified dimensions of the control.

Note that the static text associated with the Spinner control (previous screenshot) has been updated, and that the color of the static text has been changed to 'Green Messages' via the Radiobutton group.
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 5 ±
Y o u r R e a l O p i n i o n : I g u e s s w e a r e l u c k i e r t h a n w e d e s e r v e .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : P i g e o n s c o o
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

Next, is the Scrollext control. The current selection is highlighted. From the user's point of view, this control is functionally identical to the Scrollbox control (previous screenshot); however, the displayed data are External to the control itself, thus, Scrollext. Both the text and color data live in the application's memory space so that the data may be transparently updated by the application in response to changing needs.

See our 'FileMangler' file-management utility for a practical demonstration of the Scrollext control.

N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 5 ±
Y o u r R e a l O p i n i o n : I g u e s s w e a r e l u c k i e r t h a n w e d e s e r v e .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : R o b i n s s i n g
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : S h e e p b a a a
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

The input focus is now on a Dropdown control, but note that the control has not yet been expanded. It simply displays the currently-selected item. When the user expands the control (see next screenshot), then a new item may be selected. The control is expanded when it receives either the 'Enter' key, the 'Spacebar' key or the 'PageDown' key.
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 5 ±
Y o u r R e a l O p i n i o n : I g u e s s w e a r e l u c k i e r t h a n w e d e s e r v e .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : R o b i n s s i n g
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : M o o s e b e l l o w
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

The input focus is now on the expanded Dropdown control. In this example, the control expands downward, but Dropdown controls may also be configured to expand upward, or to expand upward and downward from the centerpoint.

Note that dialog data which are obscured by expanding the control are automatically saved, so that when the control returns to the collapsed state, the obscured data will be restored.
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 5 ±
Y o u r R e a l O p i n i o n : I g u e s s w e a r e l u c k i e r t h a n w e d e s e r v e .
A v i a n s M a m m a l s
g o o s e c o w g o o s e
c h i c k e n h o r s e c h i c k e n
d u c k s h e e p d u c k
p i g e o n h o g p i g e o n
s p a r r r o w g o a t s p a r r r o w W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t m a g p i e b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : R o b i n s s i n g
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : M o o s e b e l l o w
Z o o C r i t t e r s : G e e s e h o n k
C a p t u r e D i a l o g T o F i l e
D O N E A L T + z = = p l a i n t e x t
A L T + S H I F T + z = = h t m l

The input focus has now moved to the visible Menuwin control in the center of the dialog, which is currently in the 'collapsed' state, that is, only the menu's title is displayed.

Note that the Dropdown control (previous screenshot) has returned to its 'collapsed' state, displaying its new selection, and that the previously-obscured data have been restored.

At this point, the user may either open the menu or continue on to another control object without expanding the menu. See the next screenshot for the expanded Menuwin control.
N c D i a l o g - C a p t u r e D i a l o g w i t h C o n t r o l s
W r i t e a m e s s a g e : M u l t i - L i n e T e x t B o x ( a l l p r i n t i n g c h a r s ) B i l l b o a r d C o n t r o l ( r e a d o n l y )
" Y o u c a n ' t a l w a y s g e t w h a t I l s a , I ' m n o g o o d a t b e i n g n o b l e , b u t T h e r e o n c e w a s a m a n f r o m P o u g h k e e p s i e
i t d o e s n ' t t a k e m u c h t o s e e t h a t t h e W h o o f t e n g o t r a t h e r t i p s y .
[ ] G r e e n M e s s a g e s p r o b l e m s o f t h r e e l i t t l e p e o p l e d o n ' t H e w a s r o u n d l y a s h a m e d ;
[ ] M a g e n t a M e s s a g e s a m o u n t t o a h i l l o f b e a n s i n t h i s c r a z y T w a s h i s w i f e t h a t h e b l a m e d ,
[ ] Y e l l o w M e s s a g e s w o r l d . S o m e d a y y o u ' l l u n d e r s t a n d t h a t . F o r s h e w a s q u i t e p r o n e t o b e d i t z y .
Y o u r T e x t M e s s a g e : " Y o u c a n ' t a l w a y s g e t w h a t y o u w a n t , b u t i f y o u t r y , s o m e t i m e s - - y o u g e t w h a t y o u n e e d . "
P r e s i d e n t i a l A p p r o v a l R a t i n g 5 ±
Y o u r R e a l O p i n i o n : I g u e s s w e a r e l u c k i e r t h a n w e d e s e r v e .
A v i a n s M a m m a l s
g o o s e c o w c h i c k e n
c h i c k e n h o r s e
d u c k s h e e p D r o p d o w n C o n t r o l
p i g e o n h o g
s p a r r r o w g o a t T o d a y ' s S p e c i a l s W h a t ' s F o r L u n c h ?
m a g p i e r a b b i t M e n u W i n C o n t r o l b a k e d f i s h - a n d - b e e r
r o b i n m o o s e
d o v e m o u s e F l y i n g C r i t t e r s : R o b i n s s i n g
S c r o l l b o x C o n t r o l S c r o l l E x t C o n t r o l W a l k i n g C r i t t e r s : M o o s e b e l l o w
Z o o C r i t t e r s : C h i c k e n s c l u c k