Gambas Documentation
Application Repository
Code Snippets
Compilation & Installation
Components
gb
gb.args
gb.cairo
gb.chart
gb.clipper
gb.complex
gb.compress
gb.crypt
gb.data
gb.db
gb.db.form
gb.db.mysql
gb.db.odbc
gb.db.postgresql
gb.db.sqlite2
gb.db.sqlite3
gb.dbus
gb.dbus.trayicon
gb.debug
gb.desktop
gb.desktop.gnome.keyring
gb.desktop.x11
gb.eval
gb.eval.highlight
gb.form
_DateChooser_Colors
_DateChooser_Data
_DateChooser_Date
_DocumentItem
_DocumentLayout
_FilePropertiesData
_IconPanelContainer
_TabPanelContainer
_ToolPanelContainer
_WizardContainer
Balloon
Bookmarks
ButtonBox
ColorButton
ColorChooser
ColorPalette
Completion
DateBox
DateChooser
DirBox
DirBrowser
DirChooser
DirView
DocumentView
Expander
FileBox
FileChooser
FileCompletion
FileProperties
FileView
FontBox
FontChooser
IconPanel
ImageView
InputBox
LCDLabel
ListContainer
ListEditor
MaskBox
MenuButton
Message
MessageView
SidePanel
SliderBox
SpinBar
Spinner
Stock
SwitchButton
TableView
_new
Cancel
Clear
Click
Edit
Editor
EditWith
Hide
Insert
NoKeyboard
Save
Save
TabPanel
TimeBox
ToolPanel
URLLabel
ValueBox
Wizard
gb.form.dialog
gb.form.editor
gb.form.htmlview
gb.form.mdi
gb.form.print
gb.form.stock
gb.form.terminal
gb.gmp
gb.gsl
gb.gtk
gb.gtk.opengl
gb.gtk3
gb.gtk3.opengl
gb.gtk3.webview
gb.gui
gb.gui.opengl
gb.gui.qt
gb.gui.qt.opengl
gb.gui.qt.webkit
gb.gui.trayicon
gb.gui.webview
gb.hash
gb.highlight
gb.image
gb.image.effect
gb.image.imlib
gb.image.io
gb.inotify
gb.jit
gb.libxml
gb.logging
gb.map
gb.markdown
gb.media
gb.media.form
gb.memcached
gb.mime
gb.mysql
gb.ncurses
gb.net
gb.net.curl
gb.net.pop3
gb.net.smtp
gb.openal
gb.opengl
gb.opengl.glsl
gb.opengl.glu
gb.opengl.sge
gb.openssl
gb.option
gb.pcre
gb.pdf
gb.poppler
gb.qt4
gb.qt4.ext
gb.qt4.opengl
gb.qt4.webkit
gb.qt4.webview
gb.qt5
gb.qt5.ext
gb.qt5.opengl
gb.qt5.webkit
gb.qt5.webview
gb.report
gb.report2
gb.scanner
gb.sdl
gb.sdl.sound
gb.sdl2
gb.sdl2.audio
gb.settings
gb.signal
gb.term
gb.test
gb.util
gb.util.web
gb.v4l
gb.vb
gb.web
gb.web.feed
gb.web.form
gb.web.gui
gb.xml
gb.xml.html
gb.xml.rpc
gb.xml.xslt
Controls pictures
Deprecated components
Developer Documentation
Development Environment Documentation
Documents
Error Messages
Gambas Playground
How To's
Language Index
Language Overviews
Last Changes
Lexicon
README
Search the wiki
To Do
Topics
Tutorials
Wiki License
Wiki Manual

TableView (gb.form)

This control is an editable GridView.

This class inherits GridView in gb.qt4.

This class is creatable.

This class acts like a read-only array.

Inherited constants
Both   Indicate that both horizontal and vertical headers must be displayed.
Horizontal   Indicate that the horizontal header must be displayed.
None   Indicate that no header is displayed.
Vertical   Indicate that the vertical header must be displayed.

Properties
Editor   Returns the control used for editing the cell.
NoKeyboard   Returns or sets if the arrow keys will move the current cell.

Inherited properties
Action   Returns or sets the action string associated with the control.
AutoResize   Return or set if the last column will automatically be resized so that the gridview view area is entirely covered.
Background   Returns or sets the background color used by the control.
Border   Return or set if the control displays a border.
Children   Returns a collection of each control included in the container.
ClientH   A synonymous for the ClientHeight property.
ClientHeight   Return the height of the internal area containing the cells.
ClientW   A synonymous for the ClientWidth property.
ClientWidth   Return the width of the internal area containing the cells.
ClientX   Return the left position of the internal area containing the cells.
ClientY   Return the top position of the internal area containing the cells.
Column   Return or set the index of the current column.
Columns   Return a virtual array of each gridview column.
Current   Return the current cell.
Cursor   Use this property for assigning a custom cursor to a control.
Data   Use this property to store the contents of a cell during the Data event handler.
Design   Indicates that the control is in design mode.
Direction   Return or set the control text direction.
Drop   Returns or sets if a control accepts drops.
Enabled   Indicates that the control is enabled.
Expand   Returns or sets if a control will expand if included in a container that arranges its contents.
Font   Returns or sets the font used to draw text in the control.
Foreground   Returns or sets the foreground color used by the control.
Grid   Return or set if the grid is displayed.
H   A synonymous for the Height property.
Handle   Returns the internal X11 window handle of the control.
HasFocus   Returns whether the control has the focus.
Header   Return or set which headers should be displayed:
Height   Returns or sets the height of the control.
Hovered   Returns whether the mouse cursor is inside the control.
Id   A synonymous for the Handle property.
Ignore   Returns or sets if a control must be ignored when its parent arranges its children.
Left   Returns or sets the position of the left border of the control relative to its parent.
Mode   Return or set the selection mode:
Mouse   Returns or sets the appearence of the cursor when it points inside the control.
Name   Returns or sets the name of the control.
Next   Returns the next control having the same parent.
NoTabFocus   Return or set if a control cannot be focused with the TAB key.
Padding   Return or set the default cell padding in pixels.
Parent   Returns the control container.
PopupMenu   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.
Previous   Returns the previous control having the same parent.
Proxy   Return or set the "proxy" of a control.
Resizable   Return or set if the column headers are resizable.
RightToLeft   Return if the control is right to left oriented.
Row   Return or set the index of the current row.
Rows   Return a virtual array of each gridview row.
ScreenX   Returns the position of the left border of the control in screen coordinates.
ScreenY   Returns the position of the top border of the control in screen coordinates.
ScrollBar   Return or set which scrollbars are displayed.
ScrollH   A synonymous for ScrollHeight.
ScrollHeight   Returns the contents height.
ScrollW   A synonymous for ScrollWidth.
ScrollWidth   Returns the contents width.
ScrollX   Returns or sets the horizontal scrolling position.
ScrollY   Returns or sets the vertical scrolling position.
ShowCursor   Return or set if a light cursor is drawn around the current cell.
Sorted   Return or set if clicking on a column header toggles the sort indicator.
Tag   Returns or sets the control tag.
Tooltip   Returns or sets the tooltip shown when the mouse stays on the control for a short time.
Top   Returns or sets the position of the top border of the control relative to its parent.
Tracking   Returns or sets if the control will receive MouseMove events.
Visible   Indicates if the control is visible or not.
W   A synonymous for the Width property.
Width   Returns or sets the width of the control.
Window   Returns the top-level window that contains the control.
X   Returns or sets the position of the left border of the control relative to its parent.
Y   Returns or sets the position of the top border of the control relative to its parent.

Methods
Cancel   Cancels the current edition.
Clear   Clear the grid static contents.
Edit   Starts editing the current cell.
EditWith   Edit the current cell with a specific control.
Save   Save the current edit and update the edited TableView item.

Inherited methods
AddColumn   Add a new column to the GridView.
ColumnAt   Return the index of the column pointed by the specified horizontal position.
Delete   Destroys the control.
Drag   Starts a drag & drop process.
FindChild   Finds the first child control pointed by the X and Y coordinates.
Grab   Grab the keyboard and the mouse so that all keyboard and mouse events are received by the control.
Hide   Hides the control.
Lower   Sends the control to the background of its parent.
Move   Moves and/or resizes the control.
MoveScaled   Moves and/or resizes the control.
MoveTo   Set the current cell row and column.
Raise   Sends the control to the foreground of its parent.
Refresh   Trigger a redraw of the control.
Reparent   Changes the container of a control.
Resize   Resizes the control.
ResizeScaled   Resizes the control.
RowAt   Return the index of the row pointed by the specified vertical position.
Scroll   Scroll the contents to the given position.
Select   Selects several rows.
SelectAll   Select all rows.
SetFocus   Gives the focus to the control.
Show   Shows the control.
UnSelectAll   Unselect all rows.

Events
Click   This event is raised when the user has clicked on a cell.
Hide   This event is raised just after the TableView editor is hidden.
Insert   This event is raised when the user requested an insertion by hitting the RETURN key inside the bottom-right cell.
Save   This event is raised when some value must be saved in a specified cell.

Inherited events
Activate   Raised when the user double-clicks on a cell.
Arrange   This event is raised when a container has just finished arranging its contents.
BeforeArrange   This event is raised just before a container arranges its contents.
Change   Raised when the current cell has changed.
ColumnClick   Raised when the user clicks on a column header.
ColumnResize   Raised when a column is resized.
ColumnSize   Raised when a specific column has been resized by the user with a double-click on the border separating it from the next column.
Data   This event is raised when the data stored in the specified cell is needed (usually to draw it).
DblClick   Raised when the user quickly clicks twice on the control.
Drag   This event is raised when the mouse enters the control during a drag & drop process.
DragLeave   This event is raised when the mouse leaves the control during a drag & drop operation.
DragMove   This event is raised while the mouse moves inside the control during a drag & drop process.
Draw   Raised when a cell must be drawn.
Drop   This event is raised when a drag is dropped in the control.
Enter   Raised when the mouse enters the control.
Font   This event is raised when the control font changes.
GotFocus   Raised when the control has got the focus.
KeyPress   Raised when a key is pressed while the control has the focus.
KeyRelease   Raised when a key is released while the control has the focus.
Leave   Raised when the mouse leaves the control.
LostFocus   Raised when the control has lost the focus.
Menu   Raised when the user clicks on the control with the right mouse button, or if it hits the MENU key.
MouseDown   Raised when a mouse button is pressed while the cursor is inside the control.
MouseDrag   This event is raised when a drag operation should be started.
MouseMove   Raised when the mouse moves inside the control while a mouse button is pressed.
MouseUp   Raised when a mouse button is depressed while the cursor is inside the control.
MouseWheel   This event is raised when the user moves or presses the mouse wheel while the mouse is inside the control.
NewChild   This event is raised when a new child Control has just been inserted into the container.
RowClick   Raised when the user clicks on a row header.
RowResize   Raised when a row is resized.
RowSize   Raised when a specific row has been resized.
Scroll   Raised when the control contents have been scrolled.
Select   Raised when the selection changes.
Sort   Raised when the GridView contents must be sorted.

How to make a cell editable

To make a cell editable, you must call the Edit or EditWith method in response to a Click or Activate event.

Calling one of this method creates a cell editor widget that allows the user to modify the cell contents. This editor is automatically managed by the TableView.

If the user modifies the cell contents, then the Save event is raised, and you must actually save the data during the Save event handler. This is not automatic!

If you want to explicitly cancel an edition, call the Cancel method.

Keyboard management

Hitting an arrow key while editing a cell automatically moves the cell editor to the nearest editable cell.

To know if a cell is editable or not, the Click or Activate event is raised, and if no Edit or EditWith method is called in response to the event, the move is repeated until a TableView border is reached.

Hitting the ESC key cancels the current edition.

Hitting the ENTER or the RETURN key moves to the next cell like the right arrow key. But if the end of the TableView is reached, the Insert event is raised.

Beware that the Edit or EditWith method must be called during the Click or Activate event handler, otherwise the keyboard management won't work!