Gambas Documentation - /comp/gb.qt4/form

# Form (gb.qt4)

The parent class of every form of a program.

This class inherits Window.
This class can be used like an object by creating a hidden instance on demand.
This class is
Creates a new Form.
creatable
.
This class acts like a
Returns a control located in the window from its name.
read-only
array.

Static methods | Constants
--- | ---
Creates the hidden default instance of the form. Load This method allows the Development Environment to use forms as startup classes. Main | This constants is used by the Stacking property for windows that must stay above other windows. Above This constants is used by the Stacking property for windows that must stay below other windows. Below This constants is used by the Stacking property for windows that have a normal stacking order. Normal

Properties | Methods | Events
--- | --- | ---

Returns or sets the action string associated with the control.
Action
Returns or sets how this container arrange its children controls.
Arrangement
Returns or sets if the window will automatically resize to fit its contents.
AutoResize
Returns or sets the background color used by the control.
Background
Return or set if the window has a border.
Border
A synonymous for the Text property.
Caption
Returns a collection of each control included in the container.
Children
A synonymous for the ClientHeight property.
ClientH
Returns the height of the area containing the controls.
ClientHeight
A synonymous for the ClientWidth property.
ClientW
Returns the width of the area containing the controls.
ClientWidth
Returns the position of the top border of the area containing the controls.
ClientX
Returns the position of the left border of the area containing the controls.
ClientY
Returns if the window has been closed.
Closed
Returns a collection of all controls that belong to this window.
Controls
Use this property for assigning a custom cursor to a control.
Cursor
Indicates that the control is in design mode.
Design
Returns or sets if a control accepts drops.
Drop
Indicates that the control is enabled.
Enabled
Returns or sets if a control will expand if included in a container that arranges its contents.
Expand
Returns or sets the font used to draw text in the control.
Font
Returns or sets the foreground color used by the control.
Foreground
Returns or sets if the window is shown in fullscreen mode.
FullScreen
A synonymous for the Height property.
H
Returns the internal X11 window handle of the control.
Handle
Returns whether the control has the focus.
HasFocus
Returns or sets the height of the control.
Height
Returns whether the mouse cursor is inside the control.
Hovered
Returns or sets the picture used as an icon by the window.
Icon
A synonymous for the Handle property.
Id
Returns or sets if a control must be ignored when its parent arranges its children.
Ignore
Returns or sets if the children controls of the container are indented.
Indent
Return or set if the horizontal or vertical arrangement direction is inverted.
Invert
Returns or sets the position of the left border of the control relative to its parent.
Left
Returns or sets if there is a margin between the container border and all its children.
Margin
Returns or sets if Picture must be used as a shape mask by the window.
Mask
Returns or sets if the window is maximized.
Maximized
Returns a collection of all menus of the window menu bar.
Menus
Returns or sets if the window is minimized.
Minimized
Returns if a window is currently displayed modal.
Modal
Returns or sets the appearence of the cursor when it points inside the control.
Mouse
Returns or sets the name of the control.
Name
Returns the next control having the same parent.
Next
Return or set if a control cannot be focused with the TAB key.
NoTabFocus
Return or set the opacity of the window.
Opacity
Returns or sets the number of pixels used as space between children controls, or container inner margin.
Padding
Returns the control container.
Parent
Indicates if the window is persistent, i.e. if it is not destroyed but only hidden when the users closes it.
Persistent
Returns the picture displayed in the window background.
Picture
Return or set the name of the menu that will be popped-up when the user presses the right mouse button or the keyboard `MENU` key.
PopupMenu
Returns the previous control having the same parent.
Previous
Return or set the "proxy" of a control.
Proxy
Constant used by the Border property to indicate that the window is freely resizable.
Resizable
Return the monitor index where the window is located.
Screen
Returns the position of the left border of the control in screen coordinates.
ScreenX
Returns the position of the top border of the control in screen coordinates.
ScreenY
Indicates if the window is displayed or not in the desktop task bar.
SkipTaskbar
Returns or sets if the children of the container are spaced out.
Spacing
Returns or sets the stacking group of the window.
Stacking
Returns or sets if the window is visible in all virtual desktops.
Sticky
Returns or sets the control tag.
Tag
Return or set if the window takes the focus automatically when it is opened.
TakeFocus
Returns or sets the title of the window.
Text
A synonymous for the Text property.
Title
Returns or sets the tooltip shown when the mouse stays on the control a few time.
Tooltip
Returns or sets the position of the top border of the control relative to its parent.
Top
Returns if a window is a top-level window.
TopLevel
Returns or sets if a window stays on top on all other windows.
TopOnly
Returns or sets if the control will receive MouseMove events.
Tracking
Return or set if the window background is transparent, i.e. if it takes the alpha components of its background color or picture into account.
Transparent
Return or set if the window is an utility window, as defined by the freedesktop standard.
Utility
Returns or sets if a window is visible.
Visible
A synonymous for the Width property.
W
Returns or sets the width of the control.
Width
Returns the top-level window that contains the control.
Window
Returns or sets the position of the left border of the control relative to its parent.
X
Returns or sets the position of the top border of the control relative to its parent.
Y

Activate
Centers the window on screen.
Center
Closes the window, and returns an optional integer value used by the
Close
Deletes the window.
Delete
Starts a drag & drop process.
Drag
Finds the first child control pointed by the X and Y coordinates.
FindChild
Grab the keyboard and the mouse so that all keyboard and mouse events are received by the control.
Grab
Hides the control.
Hide
Sends the control to the background of its parent.
Lower
Moves and/or resizes the control.
Move
Moves and/or resizes the control.
MoveScaled
Raises the window.
Raise
Redraws the control, or just a part of it.
Refresh
Changes the container of a control.
Reparent
Resizes the control.
Resize
Resizes the control.
ResizeScaled
Gives the focus to the control.
SetFocus
Shows the window in non-modal mode.
Show
A synonymous for the ShowModal method.
ShowDialog
Shows the window in modal mode.
ShowModal
Use that window to display a popup.
ShowPopup

Raised when the window is activated.
Activate
This event is raised when a container has just finished arranging its contents.
Arrange
This event is raised just before a container arranges its contents.
BeforeArrange
Raised when the window is going to be closed.
Close
Raised when the user quickly clicks twice on the control.
DblClick
Raised when the window is deactivated.
Deactivate
This event is raised when the mouse enters the control during a drag & drop process.
Drag
This event is raised when the mouse leaves the control during a drag & drop operation.
DragLeave
This event is raised while the mouse moves inside the control during a drag & drop process.
DragMove
This event is raised when a drag is dropped in the control.
Drop
Raised when the mouse enters the control.
Enter
Raised when the control has got the focus.
GotFocus
Raised when the window is hidden.
Hide
This event is raised when the window icon changes.
Icon
Raised when a key is pressed while the control has the focus.
KeyPress
Raised when a key is released while the control has the focus.
KeyRelease
Raised when the mouse leaves the control.
Leave
Raised when the control has lost the focus.
LostFocus
Raised when the user clicks on the control with the right mouse button, or if it hits the `MENU` key.
Menu
Raised when a mouse button is pressed while the cursor is inside the control.
MouseDown
This event is raised when a drag operation should be started.
MouseDrag
Raised when the mouse moves inside the control while a mouse button is pressed.
MouseMove
Raised when a mouse button is depressed while the cursor is inside the control.
MouseUp
This event is raised when the user moves or presses the mouse wheel while the mouse is inside the control.
MouseWheel
Raised when the window is moved.
Move
This event is raised when a new child Control has just been inserted into the container.
NewChild
Raised when the window is going to be visible for the first time.
Open
Raised when the window is resized.
Resize
Raised when the window is shown.
Show
This event is raised when the window title changes.
Title

### Event management

By default, a form is its own event observer.

It means that all the events raised by the Form object are caught by event handlers defined in the form source code.

### Automatic instance

Forms internally manages an automatic singleton instance.

It means that you can use the form class name as a form instance. The first time you do that, the internal singleton is automatically created.

You can force the creation of the automatic instance by using the Load method.

### Startup form

A form can be the startup class of the project, as it implements a `Main` method. In that case, the automatic instance of the form is used.

### Examples

    ' Instanciate the automatic instance, move it and show it

    MyForm.Move(90, 150)
    MyForm.Title = "Automatic instance"
    MyForm.Show

    ' Do the same thing with another instance of the same form

    Dim hForm As MyForm

    hForm = New MyForm
    hForm.Title = "Another instance"
    hForm.Move(110, 170)
    hForm.Show

    ...

    ' Event handler in the MyForm source code

    Public Sub Form_Open()

      Print "Showing form: "; Me.Title

    End