MiniGUI API Reference (MiniGUI-Threads)
v5.0.6
A mature and proven cross-platform GUI system for embedded and smart IoT devices
|
Modules | |
Styles for main window types/levels | |
Before 5.0.0, you can create a topmost main window with the style WS_EX_TOPMOST in order to show the main window above all normal windows, and if you use MiniGUI-Processes runtime mode, the server (mginit ) will always create global main windows. | |
Macros | |
#define | WS_NONE 0x00000000L |
None style. More... | |
#define | WS_MINIMIZEBOX 0x80000000L |
Creates a window with minimizing box on caption. More... | |
#define | WS_MAXIMIZEBOX 0x40000000L |
Creates a window with maximizing box on caption. More... | |
#define | WS_CAPTION 0x20000000L |
Creates a main window with caption. More... | |
#define | WS_SYSMENU 0x10000000L |
Creates a main window with system menu. More... | |
#define | WS_VISIBLE 0x08000000L |
Creates a window initially visible. More... | |
#define | WS_DISABLED 0x04000000L |
Creates a window initially disabled. More... | |
#define | WS_VSCROLL 0x02000000L |
Creates a window with vertical scroll bar. More... | |
#define | WS_HSCROLL 0x01000000L |
Creates a window with horizontal scroll bar. More... | |
#define | WS_DLGFRAME 0x00800000L |
The main window has a fixed frame, i.e. user can not drag the border of the window. More... | |
#define | WS_THICKFRAME 0x00400000L |
Creates a main window with thick frame. More... | |
#define | WS_THINFRAME 0x00200000L |
Creates a main window with thin frame. More... | |
#define | WS_BORDER 0x00100000L |
Creates a window with border. More... | |
#define | WS_CHILD 0x00080000L |
Indicates the window is a child. More... | |
#define | WS_GROUP 0x00040000L |
Indicates the control is the leader of a group. More... | |
#define | WS_TABSTOP 0x00020000L |
Indicates the user can set the input focus to the control by using Tab key. More... | |
#define | WS_ALWAYSTOP 0x00010000L |
Indicates the main window is always on top of others. More... | |
#define | WS_EX_NONE 0x00000000L |
No any extended window style. More... | |
#define | WS_EX_CONTROL_MASK 0x0000000FL |
The extended style mask for control use. More... | |
#define | WS_EX_TROUNDCNS 0x00000010L |
The window have round corners at top edge. More... | |
#define | WS_EX_BROUNDCNS 0x00000020L |
The window have round corners at bottom edge. More... | |
#define | WS_EX_USEPRIVATECDC 0x00000040L |
The window has its own private client device context. More... | |
#define | WS_EX_NOTDRAGGABLE 0x00000080L |
A style controlling whether a main window can be dragged by using mouse. More... | |
#define | WS_EX_USEPARENTFONT 0x00000100L |
The window uses the font of its parent as the default font. More... | |
#define | WS_EX_USEPARENTCURSOR 0x00000200L |
The window uses the cursor of its parent as the default cursor. More... | |
#define | WS_EX_USEPARENTRDR 0x00000400L |
The window use the same window renderer as parent. More... | |
#define | WS_EX_NOPARENTNOTIFY 0x00000800L |
The window will not send any notification to the parent. More... | |
#define | WS_EX_AUTOSECONDARYDC 0x00001000L |
The window creates its own secondary device context automatically. More... | |
#define | WS_EX_TRANSPARENT 0x00002000L |
The window is transparent. More... | |
#define | WS_EX_TOPMOST 0x00004000L |
The main window is in the higher level. More... | |
#define | WS_EX_TOOLWINDOW 0x00008000L |
The main window is a tool window, which can not gain the input focus. More... | |
#define | WS_EX_LEFTSCROLLBAR 0x00040000L |
The horizontal scroll bar of the window is located at left. More... | |
#define | WS_EX_RIGHTSCROLLBAR 0x00000000L |
The horizontal scroll bar of the window is located at right (default). More... | |
#define | WS_EX_DLGHIDE 0x00100000L |
The dialog won't show immediately after it is created. More... | |
#define | WS_EX_AUTOPOSITION 0x00200000L |
The position of the main window will be determined by system. More... | |
#define | WS_EX_NOCLOSEBOX 0x00400000L |
The main window has no closing box on its caption. More... | |
#define | WS_EX_CLIPCHILDREN 0x00800000L |
When paint the window, the children areas will be clipped. More... | |
#define | WS_EX_LFRDR_MASK 0x0F000000L |
The style mask for LF renderer internal usage. More... | |
#define | WS_EX_LFRDR_CUSTOM1 0x01000000L |
The user-defined extended style. It's often used to process user-defined hotspot area. More... | |
#define | WS_EX_LFRDR_CUSTOM2 0x02000000L |
The user-defined extended style. More... | |
#define | WS_EX_LFRDR_CUSTOM3 0x04000000L |
The user-defined extended style. More... | |
#define | WS_EX_LFRDR_CUSTOM4 0x08000000L |
The user-defined extended style. More... | |
#define | WS_EX_INTERNAL_MASK 0xF0000000L |
The style mask for internal use. More... | |
#define WS_ALWAYSTOP 0x00010000L |
#define WS_BORDER 0x00100000L |
#define WS_CAPTION 0x20000000L |
#define WS_CHILD 0x00080000L |
#define WS_DISABLED 0x04000000L |
#define WS_DLGFRAME 0x00800000L |
#define WS_EX_AUTOPOSITION 0x00200000L |
The position of the main window will be determined by system.
If a main window has this extend style when creating it, MiniGUI will determine the position in the screen for the main window. If the width or the height of the window specified in MAINWINCREATE structure is zero, MiniGUI will also determine a default size for the main window.
Under the compositing schema, the compositor is responsible to calculate the position and the size for a main window.
Since 5.0.0
#define WS_EX_AUTOSECONDARYDC 0x00001000L |
The window creates its own secondary device context automatically.
#define WS_EX_BROUNDCNS 0x00000020L |
#define WS_EX_CLIPCHILDREN 0x00800000L |
#define WS_EX_CONTROL_MASK 0x0000000FL |
#define WS_EX_DLGHIDE 0x00100000L |
#define WS_EX_INTERNAL_MASK 0xF0000000L |
#define WS_EX_LEFTSCROLLBAR 0x00040000L |
#define WS_EX_LFRDR_CUSTOM1 0x01000000L |
#define WS_EX_LFRDR_CUSTOM2 0x02000000L |
The user-defined extended style.
#define WS_EX_LFRDR_CUSTOM3 0x04000000L |
The user-defined extended style.
#define WS_EX_LFRDR_CUSTOM4 0x08000000L |
The user-defined extended style.
#define WS_EX_LFRDR_MASK 0x0F000000L |
#define WS_EX_NOCLOSEBOX 0x00400000L |
#define WS_EX_NONE 0x00000000L |
#define WS_EX_NOPARENTNOTIFY 0x00000800L |
The window will not send any notification to the parent.
#define WS_EX_NOTDRAGGABLE 0x00000080L |
#define WS_EX_RIGHTSCROLLBAR 0x00000000L |
#define WS_EX_TOOLWINDOW 0x00008000L |
#define WS_EX_TOPMOST 0x00004000L |
The main window is in the higher level.
Before 5.0.0, you can create a main window with this style in order to show the main window above all normal windows, and if you use MiniGUI-Processes runtime mode, the server (mginit
) will always create global main windows.
Since 5.0.0, we introduce a concept of levels for main windows. We can use new styles like WS_EX_WINTYPE_GLOBAL to create main windows in different levels. For historical reasons, you can still use this style, but MiniGUI will create a main window in the higher level for this styele.
#define WS_EX_TRANSPARENT 0x00002000L |
#define WS_EX_TROUNDCNS 0x00000010L |
#define WS_EX_USEPARENTCURSOR 0x00000200L |
#define WS_EX_USEPARENTFONT 0x00000100L |
#define WS_EX_USEPARENTRDR 0x00000400L |
#define WS_EX_USEPRIVATECDC 0x00000040L |
The window has its own private client device context.
#define WS_GROUP 0x00040000L |
#define WS_HSCROLL 0x01000000L |
#define WS_MAXIMIZEBOX 0x40000000L |
#define WS_MINIMIZEBOX 0x80000000L |
#define WS_SYSMENU 0x10000000L |
#define WS_TABSTOP 0x00020000L |
#define WS_THICKFRAME 0x00400000L |
#define WS_THINFRAME 0x00200000L |
#define WS_VISIBLE 0x08000000L |