Home / doc / diffvb 
Edit  Rename  Undo  Refresh   
fr  de  es  it  nl  pl  pt  pt_BR  ca  ar  fa  vi  ja  ru  zh  zh_TW  eo 
Documentation
History  
Differences From Visual Basic - History
06/23/2008 17:38:57 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
* \Screen measurements in VB are done in "twips", units of 1\/1440 of an inch;   * \Screen measurements in VB are done in "twips", units of 1\/1440 of an inch;
                                                                                                                                                               
* [/comp/gb.qt/form] controls in Gambas programs are private by default. You c   * [/comp/gb.qt/form] controls in Gambas programs are private by default. You c 
                                                                                                                                                               
* [/lang/str], [/lang/val], [/lang/cstr]... conversion functions behave differ   * [/lang/str], [/lang/val], [/lang/cstr]... conversion functions behave differ
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* In [../../def/gambas], simple datatypes (integer, string, etc.) are passed b   * In [../../def/gambas], simple datatypes (integer, string, etc.) are passed b
                                                                                                                                                               
                                                                                 {info                                                                          
                                                                                 Passing arguments by reference is now possible in the development version.     
                                                                                 }                                                                              
                                                                                                                                                                
* There is no such thing as a project-wide global [../../def/variable] in [../   * There is no such thing as a project-wide global [../../def/variable] in [../
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla
                                                                                                                                                               
* There's no direct Gambas equivalent to the [../../comp/gb.db/index] [../../d   * There's no direct Gambas equivalent to the [../../comp/gb.db/index] [../../d
                                                                                                                                                               
* You can't currently create transparent labels in Gambas; the background is a   * You can't currently create transparent labels in Gambas; the background is a 
                                                                                 {info                                                                          
                                                                                 This is now possible in the development version.                               
                                                                                 }                                                                              
                                                                                                                                                               
* The MouseMove [../../def/event] only occurs when a mouse button is depressed   * The MouseMove [../../def/event] only occurs when a mouse button is depressed
                                                                                                                                                               
..............................................................................   ..............................................................................
* The print command in VB 3.0 did not make a Linefeed. If you used it to print   * The print command in VB 3.0 did not make a Linefeed. If you used it to print
                                                                                                                                                               
* In VB you can use [/lang/mid]() as an instruction to cut out a substring and   * In VB you can use [/lang/mid]() as an instruction to cut out a substring and
                                                                                 {info                                                                          
                                                                                 This Mid$() syntax is now possible in the development version.                 
                                                                                 }                                                                              
                                                                                                                                                               
* Non-ASCII characters which can be legal for use in identifiers in VB code, a   * Non-ASCII characters which can be legal for use in identifiers in VB code, a
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                 * =On [/comp/gb/error] Goto=: see [/lang/try], [/lang/catch] and [/lang/finall
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb                                                                                 
                                                                                 * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
                                                                                                                                                                
* VB's default =[../../comp/gb.form/inputbox]= function (pop up a dialog promp   * VB's default =[../../comp/gb.form/inputbox]= function (pop up a [../../comp/ 
                                                                                                                                                               
* =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used   * =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used
                                                                                                                                                               
..............................................................................   ..............................................................................
11/30/2007 18:01:44 - l.carlier
..............................................................................   ..............................................................................
                                                                                                                                                               
There are probably more similarities than differences, but you can't simply co   There are probably more similarities than differences, but you can't simply co
                                                                                                                                                               
The symbol %vb% will sometimes appear on a page in this documentation to indic   The symbol %vb% will sometimes appear on a page in this documentation to indic 
                                                                                                                                                               
+Non-Language-Specific Differences                                               +Non-Language-Specific Differences                                            
                                                                                                                                                               
..............................................................................   ..............................................................................
-                                                                                -                                                                             
.cls                                                                             .cls                                                                          
-                                                                                -                                                                             
.class                                                                           .[../../def/class]                                                             
][                                                                               ][                                                                            
[/comp/gb.qt/form] definition file                                               [/comp/gb.qt/form] definition file                                            
-                                                                                -                                                                             
..............................................................................   ..............................................................................
Any other file stored in the project directory.                                  Any other file stored in the project directory.                               
]]                                                                               ]]                                                                            
                                                                                                                                                               
* Gambas projects are defined as a directory with a .project file in it, and a   * [../../def/gambas] projects are defined as a directory with a .project file  
                                                                                                                                                               
* [../../comp/gb.sdl.image/screen] measurements in VB are done in "twips", uni   * \Screen measurements in VB are done in "twips", units of 1\/1440 of an inch; 
                                                                                                                                                               
* [/comp/gb.qt/form] controls in Gambas programs are private by default. You c   * [/comp/gb.qt/form] controls in Gambas programs are private by default. You c
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* In [../../def/gambas], simple datatypes (integer, string, etc.) are passed b   * In [../../def/gambas], simple datatypes (integer, string, etc.) are passed b
                                                                                                                                                               
* There is no such thing as a project-wide global [../../def/variable] in Gamb   * There is no such thing as a project-wide global [../../def/variable] in [../ 
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* [../../def/gambas] has the concept of control groups, which allow you to han   * [../../def/gambas] has the concept of control groups, which allow you to han
                                                                                                                                                               
* Whereas VB makes it impossible to run a program synchronously and receive it   * Whereas VB makes it impossible to run a program synchronously and receive it 
                                                                                                                                                               
* You can do all of the above with Unix devices and special files as well, suc   * You can do all of the above with Unix devices and special files as well, suc
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb   * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
                                                                                                                                                               
* VB's default =[../../comp/gb.form/inputbox]= function (pop up a dialog promp   * VB's default =[../../comp/gb.form/inputbox]= function (pop up a dialog promp 
                                                                                                                                                               
* =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used   * =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan   * Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can 
                                                                                                                                                               
* Keyboard and \mouse [../../def/event] handlers do not take parameters. They    * Keyboard and \mouse [../../def/event] handlers do not take parameters. They 
** [../../comp/gb.qt/mouse/x|Mouse.X] and [../../comp/gb.qt/mouse/y|Mouse.Y] f   ** [../../comp/gb.qt/mouse/x|Mouse.X] and [../../comp/gb.qt/mouse/y|Mouse.Y] f
..............................................................................   ..............................................................................
                                                                                                                                                               
* In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s   * In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s
                                                                                                                                                               
* Do not use the [../../comp/gb.qt/form/load|Form.Load] [../../def/method]. It   * Do not use the [../../comp/gb.qt/form/load|Form.Load] [../../def/method]. It 
                                                                                                                                                               
11/30/2007 18:00:41 - l.carlier
While [../../def/gambas] is not intended to be a clone of Microsoft Visual Bas   While [../../def/gambas] is not intended to be a clone of Microsoft Visual Bas
                                                                                                                                                               
There are probably more similarities than differences, but you can't simply co   There are probably more similarities than differences, but you can't simply co 
                                                                                                                                                               
The symbol %vb% will sometimes appear on a page in this documentation to indic   The symbol %vb% will sometimes appear on a page in this documentation to indic
                                                                                                                                                               
+Non-Language-Specific Differences                                               +Non-Language-Specific Differences                                            
                                                                                                                                                               
* VB embeds the [../../def/class] code for each form [../../def/object] into t   * VB embeds the [../../def/class] code for each form [../../def/object] into t 
                                                                                                                                                               
* [/comp/gb/file] extensions:                                                    * [/comp/gb/file] extensions:                                                 
[[                                                                               [[                                                                            
..............................................................................   ..............................................................................
-                                                                                -                                                                             
Visual Basic                                                                     Visual Basic                                                                  
-                                                                                -                                                                             
Gambas                                                                           [../../def/gambas]                                                             
][                                                                               ][                                                                            
Project definition file                                                          Project definition file                                                       
-                                                                                -                                                                             
..............................................................................   ..............................................................................
                                                                                                                                                               
* Gambas projects are defined as a directory with a .project file in it, and a   * Gambas projects are defined as a directory with a .project file in it, and a
                                                                                                                                                               
* [/comp/gb.sdl.image/screen] measurements in VB are done in "twips", units of   * [../../comp/gb.sdl.image/screen] measurements in VB are done in "twips", uni 
                                                                                                                                                               
* [/comp/gb.qt/form] controls in Gambas programs are private by default. You c   * [/comp/gb.qt/form] controls in Gambas programs are private by default. You c
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* You can't edit code in Break mode in [../../def/gambas]; you need to end pro   * You can't edit code in Break mode in [../../def/gambas]; you need to end pro
                                                                                                                                                               
* In Gambas, simple datatypes (integer, string, etc.) are passed by value to p   * In [../../def/gambas], simple datatypes (integer, string, etc.) are passed b 
                                                                                                                                                               
* There is no such thing as a project-wide global [../../def/variable] in Gamb   * There is no such thing as a project-wide global [../../def/variable] in Gamb 
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* You can't currently create transparent labels in Gambas; the background is a   * You can't currently create transparent labels in Gambas; the background is a
                                                                                                                                                               
* The MouseMove [../../def/event] only occurs when a mouse button is depressed   * The MouseMove [../../def/event] only occurs when a mouse button is depressed 
                                                                                                                                                               
* In VB you could put two strings together with the symbol =+= . Because the =   * In VB you could put two strings together with the symbol =+= . Because the =
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event   * Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event
                                                                                                                                                               
* Gambas has the concept of control groups, which allow you to handle events f   * [../../def/gambas] has the concept of control groups, which allow you to han 
                                                                                                                                                               
* Whereas VB makes it impossible to run a program synchronously and receive it   * Whereas VB makes it impossible to run a program synchronously and receive it
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Controls have Enter and Leave events, which allow you to know when the mouse   * Controls have Enter and Leave events, which allow you to know when the mouse
                                                                                                                                                               
* You can read data in binary files and automatically manage the endianness of   * You can read data in binary files and automatically manage the endianness of 
                                                                                                                                                               
* Gambas uses [/def/utf8] charset internally, and so projects are fully and ea   * Gambas uses [/def/utf8] charset internally, and so projects are fully and ea
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb   * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
                                                                                                                                                               
* VB's default =[../../comp/gb.form/inputbox]= function (pop up a dialog promp   * VB's default =[../../comp/gb.form/inputbox]= function (pop up a dialog promp 
                                                                                                                                                               
* =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used   * =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used
                                                                                                                                                               
* Inserting Double Quotes in Strings: Rather than two consecutive double quote   * Inserting Double Quotes in Strings: Rather than two consecutive double quote
                                                                                                                                                               
* VScrollBar, HScrollBar: Gambas' [../../comp/gb.qt/scrollbar] replaces both o   * VScrollBar, HScrollBar: [../../def/gambas]' [../../comp/gb.qt/scrollbar] rep 
                                                                                                                                                               
* Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan   * Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can
                                                                                                                                                               
* Keyboard and \mouse event handlers do not take parameters. They use instead    * Keyboard and \mouse [../../def/event] handlers do not take parameters. They  
** [../../comp/gb.qt/mouse/x|Mouse.X] and [../../comp/gb.qt/mouse/y|Mouse.Y] f   ** [../../comp/gb.qt/mouse/x|Mouse.X] and [../../comp/gb.qt/mouse/y|Mouse.Y] f
** [../../comp/gb.qt/mouse/left|Mouse.Left] to know if the left button is pres   ** [../../comp/gb.qt/mouse/left|Mouse.Left] to know if the left button is pres
** [../../comp/gb.qt/key/code|Key.Code] to get the code of a key.                ** [../../comp/gb.qt/key/code|Key.Code] to get the code of a key.             
..............................................................................   ..............................................................................
                                                                                                                                                               
* In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s   * In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s
                                                                                                                                                               
* Do not use the [../../comp/gb.qt/form/load|Form.Load] method. It is a comple   * Do not use the [../../comp/gb.qt/form/load|Form.Load] [../../def/method]. It 
                                                                                                                                                               
09/24/2007 14:42:11 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can
                                                                                                                                                               
* Keyboard and \mouse event handlers do not take parameters. They use instead    * Keyboard and \mouse event handlers do not take parameters. They use instead  
** [/comp/gb.qt/mouse].X and [/comp/gb.qt/mouse].Y for the mouse coordinates.    ** [../../comp/gb.qt/mouse/x|Mouse.X] and [../../comp/gb.qt/mouse/y|Mouse.Y] f 
** [/comp/gb.qt/mouse].Left to know if the left button is pressed.               ** [../../comp/gb.qt/mouse/left|Mouse.Left] to know if the left button is pres 
** [../../comp/gb.qt/key].Code to get the code of a key.                         ** [../../comp/gb.qt/key/code|Key.Code] to get the code of a key.              
** [../../comp/gb.qt/key].Shift to know if the SHIFT key is pressed.             ** [../../comp/gb.qt/key/shift|Key.Shift] to know if the SHIFT key is pressed. 
** ...and so on.                                                                 ** ...and so on.                                                              
                                                                                                                                                               
* In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s   * In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s
..............................................................................   ..............................................................................
09/24/2007 14:39:32 - gambas
..............................................................................   ..............................................................................
}                                                                                }                                                                             
+ Gambas Has It, Visual Basic Doesn't                                            + Gambas Has It, Visual Basic Doesn't                                         
                                                                                                                                                               
* Unlike VB, you're not required to [../../def/compile] in GUI support if you    * Unlike VB, you're not required to compile in GUI support if you want to writ 
                                                                                                                                                               
* Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event   * Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event
                                                                                                                                                               
..............................................................................   ..............................................................................
09/24/2007 14:35:51 - gambas
While [/def/gambas] is not intended to be a clone of Microsoft Visual Basic, i   While [../../def/gambas] is not intended to be a clone of Microsoft Visual Bas 
                                                                                                                                                               
There are probably more similarities than differences, but you can't simply co   There are probably more similarities than differences, but you can't simply co 
                                                                                                                                                               
The symbol %vb% will sometimes appear on a page in this documentation to indic   The symbol %vb% will sometimes appear on a page in this documentation to indic 
                                                                                                                                                               
+Non-Language-Specific Differences                                               +Non-Language-Specific Differences                                            
                                                                                                                                                               
* VB embeds the [../../def/class] code for each form [../../def/object] into t   * VB embeds the [../../def/class] code for each form [../../def/object] into t 
                                                                                                                                                               
* [/comp/gb/file] extensions:                                                    * [/comp/gb/file] extensions:                                                 
[[                                                                               [[                                                                            
..............................................................................   ..............................................................................
-                                                                                -                                                                             
Visual Basic                                                                     Visual Basic                                                                  
-                                                                                -                                                                             
[/def/gambas]                                                                    Gambas                                                                         
][                                                                               ][                                                                            
Project definition file                                                          Project definition file                                                       
-                                                                                -                                                                             
..............................................................................   ..............................................................................
-                                                                                -                                                                             
.cls                                                                             .cls                                                                          
-                                                                                -                                                                             
.[../../def/class]                                                               .class                                                                         
][                                                                               ][                                                                            
[/comp/gb.qt/form] definition file                                               [/comp/gb.qt/form] definition file                                            
-                                                                                -                                                                             
..............................................................................   ..............................................................................
Any other file stored in the project directory.                                  Any other file stored in the project directory.                               
]]                                                                               ]]                                                                            
                                                                                                                                                               
* [/def/gambas] projects are defined as a directory with a .project file in it   * Gambas projects are defined as a directory with a .project file in it, and a 
                                                                                                                                                               
* [/comp/gb.sdl.image/screen] measurements in VB are done in "twips", units of   * [/comp/gb.sdl.image/screen] measurements in VB are done in "twips", units of 
                                                                                                                                                               
* [/comp/gb.qt/form] controls in [/def/gambas] programs are private by default   * [/comp/gb.qt/form] controls in Gambas programs are private by default. You c 
                                                                                                                                                               
* [/lang/str], [/lang/val], [/lang/cstr]... conversion functions behave differ   * [/lang/str], [/lang/val], [/lang/cstr]... conversion functions behave differ 
                                                                                                                                                               
+Visual Basic Has It, [/def/gambas] Doesn't                                      +Visual Basic Has It, Gambas Doesn't                                           
                                                                                                                                                               
* You can't edit code in Break mode in [/def/gambas]; you need to end program    * You can't edit code in Break mode in [../../def/gambas]; you need to end pro 
                                                                                                                                                               
* In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val   * In Gambas, simple datatypes (integer, string, etc.) are passed by value to p 
                                                                                                                                                               
* There is no such thing as a project-wide global [../../def/variable] in [/de   * There is no such thing as a project-wide global [../../def/variable] in Gamb 
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla 
                                                                                                                                                               
* There's no direct [/def/gambas] equivalent to the [../../comp/gb.db/index] [   * There's no direct Gambas equivalent to the [../../comp/gb.db/index] [../../d 
                                                                                                                                                               
* You can't currently create transparent labels in [/def/gambas]; the backgrou   * You can't currently create transparent labels in Gambas; the background is a 
                                                                                                                                                               
* The MouseMove [../../def/event] only occurs when a mouse button is depressed   * The MouseMove [../../def/event] only occurs when a mouse button is depressed 
                                                                                                                                                               
* In VB you could put two strings together with the symbol =+= . Because the =   * In VB you could put two strings together with the symbol =+= . Because the = 
                                                                                                                                                               
* The colon =:= does not work to seperate your code. You must take a new line    * The colon =:= does not work to seperate your code. You must take a new line 
                                                                                                                                                               
* The print command in VB 3.0 did not make a Linefeed. If you used it to print   * The print command in VB 3.0 did not make a Linefeed. If you used it to print 
                                                                                                                                                               
* In VB you can use [/lang/mid]() as an instruction to cut out a substring and   * In VB you can use [/lang/mid]() as an instruction to cut out a substring and 
                                                                                                                                                               
* Non-ASCII characters which can be legal for use in identifiers in VB code, a   * Non-ASCII characters which can be legal for use in identifiers in VB code, a 
                                                                                                                                                               
* Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins   * Thankfully, in Gambas you cannot use [/lang/goto] to trap errors! Instead, u 
                                                                                                                                                               
* ENUM cannot be used to enumerate integer constants. Instead you have to defi   * ENUM cannot be used to enumerate integer constants. Instead you have to defi
{example                                                                         {example                                                                      
 CONST ADDITION AS Integer = 1                                                    CONST ADDITION AS Integer = 1                                                
 CONST SUBSTRACTION AS Integer = 2                                                CONST SUBSTRACTION AS Integer = 2                                            
}                                                                                }                                                                             
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + Gambas Has It, Visual Basic Doesn't                                          
                                                                                                                                                               
* Unlike VB, you're not required to [../../def/compile] in GUI support if you    * Unlike VB, you're not required to [../../def/compile] in GUI support if you  
                                                                                                                                                               
* Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event   * Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event
                                                                                                                                                               
* [/def/gambas] has the concept of control groups, which allow you to handle e   * Gambas has the concept of control groups, which allow you to handle events f 
                                                                                                                                                               
* Whereas VB makes it impossible to run a program synchronously and receive it   * Whereas VB makes it impossible to run a program synchronously and receive it 
                                                                                                                                                               
* You can do all of the above with Unix devices and special files as well, suc   * You can do all of the above with Unix devices and special files as well, suc
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* You can create controls and menu dynamically, just by instantiating them wit   * You can create controls and menu dynamically, just by instantiating them wit
                                                                                                                                                               
* You can embed a [/def/gambas] form into another one: when you instantiate th   * You can embed a Gambas form into another one: when you instantiate the first 
                                                                                                                                                               
* Controls have Enter and Leave events, which allow you to know when the mouse   * Controls have Enter and Leave events, which allow you to know when the mouse
                                                                                                                                                               
* You can read data in binary files and automatically manage the endianness of   * You can read data in binary files and automatically manage the endianness of 
                                                                                                                                                               
* [/def/gambas] uses [/def/utf8] charset internally, and so projects are fully   * Gambas uses [/def/utf8] charset internally, and so projects are fully and ea 
                                                                                                                                                               
* [/def/gambas] is [/lang/free] Software whose development environment is writ   * Gambas is \Free Software whose development environment is written in itself, 
                                                                                                                                                               
And many many other things... Just add them as you like! :-)                     And many many other things... Just add them as you like! :-)                  
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb   * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
                                                                                                                                                               
* VB's default =InputBox= function (pop up a dialog prompting for a value whic   * VB's default =[../../comp/gb.form/inputbox]= function (pop up a dialog promp 
                                                                                                                                                               
* =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used   * =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used
                                                                                                                                                               
* Inserting Double Quotes in Strings: Rather than two consecutive double quote   * Inserting Double Quotes in Strings: Rather than two consecutive double quote
                                                                                                                                                               
* VScrollBar, HScrollBar: [/def/gambas]' [../../comp/gb.qt/scrollbar] replaces   * VScrollBar, HScrollBar: Gambas' [../../comp/gb.qt/scrollbar] replaces both o 
                                                                                                                                                               
* Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan   * Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can 
                                                                                                                                                               
* Keyboard and [/comp/gb.qt/mouse] [../../def/event] handlers does not take pa   * Keyboard and \mouse event handlers do not take parameters. They use instead  
** [/comp/gb.qt/mouse].X and [/comp/gb.qt/mouse].Y for the mouse coordinates.    ** [/comp/gb.qt/mouse].X and [/comp/gb.qt/mouse].Y for the mouse coordinates. 
** [/comp/gb.qt/mouse].Left to know if the left button is pressed.               ** [/comp/gb.qt/mouse].Left to know if the left button is pressed.            
** [../../comp/gb.qt/key].Code to get the code of a key.                         ** [../../comp/gb.qt/key].Code to get the code of a key.                      
** [../../comp/gb.qt/key].Shift to know if the SHIFT key is pressed.             ** [../../comp/gb.qt/key].Shift to know if the SHIFT key is pressed.          
** ...and so on.                                                                 ** ...and so on.                                                              
                                                                                                                                                               
* In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed    * In Gambas, the [/lang/timer] routine returns the number of elapsed seconds s 
                                                                                                                                                               
* Do not use the [../../comp/gb.qt/form/load|Form.Load] [../../def/method]. It   * Do not use the [../../comp/gb.qt/form/load|Form.Load] method. It is a comple 
                                                                                                                                                               
08/31/2007 16:10:25 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
* There's no direct [/def/gambas] equivalent to the [../../comp/gb.db/index] [   * There's no direct [/def/gambas] equivalent to the [../../comp/gb.db/index] [
                                                                                                                                                               
* You can't currently create transparent labels in [/def/gambas]; the backgrou   * You can't currently create transparent labels in [/def/gambas]; the backgrou 
                                                                                                                                                               
* The MouseMove [../../def/event] only occurs when a mouse button is depressed   * The MouseMove [../../def/event] only occurs when a mouse button is depressed
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb   * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
                                                                                                                                                               
* VB's default =InputBox= function (pop up a dialog prompting for a value whic   * VB's default =InputBox= function (pop up a dialog prompting for a value whic 
                                                                                                                                                               
* =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used   * =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* VScrollBar, HScrollBar: [/def/gambas]' [../../comp/gb.qt/scrollbar] replaces   * VScrollBar, HScrollBar: [/def/gambas]' [../../comp/gb.qt/scrollbar] replaces
                                                                                                                                                               
* Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan   * Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan 
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed    * In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed 
                                                                                                                                                               
* Do not use the [../../comp/gb.qt/form].[/comp/gb.qt/form/load] [../../def/me   * Do not use the [../../comp/gb.qt/form/load|Form.Load] [../../def/method]. It 
                                                                                                                                                               
08/20/2007 09:38:36 - gambas
While [/def/gambas] is not intended to be a clone of Microsoft Visual Basic, i   While [/def/gambas] is not intended to be a clone of Microsoft Visual Basic, i
                                                                                                                                                               
There are probably more similarities than differences, but you can't simply co   There are probably more similarities than differences, but you can't simply co 
                                                                                                                                                               
The symbol %vb% will sometimes appear on a page in this documentation to indic   The symbol %vb% will sometimes appear on a page in this documentation to indic
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val   * In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val
                                                                                                                                                               
* There is no such thing as a project-wide global variable in [/def/gambas]. A   * There is no such thing as a project-wide global [../../def/variable] in [/de 
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla
                                                                                                                                                               
* There's no direct [/def/gambas] equivalent to the [../../comp/gb.db/index] p   * There's no direct [/def/gambas] equivalent to the [../../comp/gb.db/index] [ 
                                                                                                                                                               
* You can't currently create transparent labels in [/def/gambas]; the backgrou   * You can't currently create transparent labels in [/def/gambas]; the backgrou
                                                                                                                                                               
* The MouseMove event only occurs when a mouse button is depressed in [/def/ga   * The MouseMove [../../def/event] only occurs when a mouse button is depressed 
                                                                                                                                                               
* In VB you could put two strings together with the symbol =+= . Because the =   * In VB you could put two strings together with the symbol =+= . Because the =
                                                                                                                                                               
..............................................................................   ..............................................................................
}                                                                                }                                                                             
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + [/def/gambas] Has It, Visual Basic Doesn't                                  
                                                                                                                                                               
* Unlike VB, you're not required to [../../def/compile] in GUI support if you    * Unlike VB, you're not required to [../../def/compile] in GUI support if you  
                                                                                                                                                               
* Instead of the =\WITH EVENTS= keyword, you must provide an "event name" to o   * Instead of the =\WITH EVENTS= keyword, you must provide an "[../../def/event 
                                                                                                                                                               
* [/def/gambas] has the concept of control groups, which allow you to handle e   * [/def/gambas] has the concept of control groups, which allow you to handle e
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* You can do all of the above with Unix devices and special files as well, suc   * You can do all of the above with Unix devices and special files as well, suc
                                                                                                                                                               
* To make an odd-shaped window you just set the [/lang/me].[comp/gb.qt/window/   * To make an odd-shaped window you just set the [/lang/me].[comp/gb.qt/window/ 
                                                                                                                                                               
* You can create controls and menu dynamically, just by instantiating them wit   * You can create controls and menu dynamically, just by instantiating them wit
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Controls have Enter and Leave events, which allow you to know when the mouse   * Controls have Enter and Leave events, which allow you to know when the mouse
                                                                                                                                                               
* You can read data in binary files and automatically manage the endianness of   * You can read data in binary files and automatically manage the endianness of 
                                                                                                                                                               
* [/def/gambas] uses [/def/utf8] charset internally, and so projects are fully   * [/def/gambas] uses [/def/utf8] charset internally, and so projects are fully
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* =End Sub=\/=End Function=: see [/lang/end].                                    * =End Sub=\/=End Function=: see [/lang/end].                                 
                                                                                                                                                               
* =Exit Sub=\/=Exit Function=: see [/lang/return]. Also, rather than setting a   * =Exit Sub=\/=Exit Function=: see [/lang/return]. Also, rather than setting a 
                                                                                                                                                               
* =End= (end program): see [/lang/quit].                                         * =End= (end program): see [/lang/quit].                                      
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan   * Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can 
                                                                                                                                                               
* Keyboard and [/comp/gb.qt/mouse] event handlers does not take parameters. Th   * Keyboard and [/comp/gb.qt/mouse] [../../def/event] handlers does not take pa 
** [/comp/gb.qt/mouse].X and [/comp/gb.qt/mouse].Y for the mouse coordinates.    ** [/comp/gb.qt/mouse].X and [/comp/gb.qt/mouse].Y for the mouse coordinates. 
** [/comp/gb.qt/mouse].Left to know if the left button is pressed.               ** [/comp/gb.qt/mouse].Left to know if the left button is pressed.            
** [../../comp/gb.qt/key].Code to get the code of a key.                         ** [../../comp/gb.qt/key].Code to get the code of a key.                      
..............................................................................   ..............................................................................
                                                                                                                                                               
* In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed    * In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed 
                                                                                                                                                               
* Do not use the [../../comp/gb.qt/form].[/comp/gb.qt/form/load] method. It is   * Do not use the [../../comp/gb.qt/form].[/comp/gb.qt/form/load] [../../def/me 
                                                                                                                                                               
04/28/2007 05:03:21 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
+Non-Language-Specific Differences                                               +Non-Language-Specific Differences                                            
                                                                                                                                                               
* VB embeds the class code for each form [../../def/object] into the same file   * VB embeds the [../../def/class] code for each form [../../def/object] into t 
                                                                                                                                                               
* [/comp/gb/file] extensions:                                                    * [/comp/gb/file] extensions:                                                 
[[                                                                               [[                                                                            
..............................................................................   ..............................................................................
-                                                                                -                                                                             
.cls                                                                             .cls                                                                          
-                                                                                -                                                                             
.class                                                                           .[../../def/class]                                                             
][                                                                               ][                                                                            
[/comp/gb.qt/form] definition file                                               [/comp/gb.qt/form] definition file                                            
-                                                                                -                                                                             
..............................................................................   ..............................................................................
                                                                                                                                                               
* In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val   * In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val
                                                                                                                                                               
* There is no such thing as a project-wide global variable in [/def/gambas]. A   * There is no such thing as a project-wide global variable in [/def/gambas]. A 
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla
                                                                                                                                                               
..............................................................................   ..............................................................................
}                                                                                }                                                                             
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + [/def/gambas] Has It, Visual Basic Doesn't                                  
                                                                                                                                                               
* Unlike VB, you're not required to [../../def/compile] in GUI support if you    * Unlike VB, you're not required to [../../def/compile] in GUI support if you  
                                                                                                                                                               
* Instead of the =\WITH EVENTS= keyword, you must provide an "event name" to o   * Instead of the =\WITH EVENTS= keyword, you must provide an "event name" to o
                                                                                                                                                               
* [/def/gambas] has the concept of control groups, which allow you to handle e   * [/def/gambas] has the concept of control groups, which allow you to handle e
                                                                                                                                                               
* Whereas VB makes it impossible to run a program synchronously and receive it   * Whereas VB makes it impossible to run a program synchronously and receive it 
                                                                                                                                                               
* You can do all of the above with Unix devices and special files as well, suc   * You can do all of the above with Unix devices and special files as well, suc
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Controls have Enter and Leave events, which allow you to know when the mouse   * Controls have Enter and Leave events, which allow you to know when the mouse
                                                                                                                                                               
* You can read data in binary files and automatically manage the endianness of   * You can read data in binary files and automatically manage the endianness of 
                                                                                                                                                               
* [/def/gambas] uses [/def/utf8] charset internally, and so projects are fully   * [/def/gambas] uses [/def/utf8] charset internally, and so projects are fully
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb   * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
                                                                                                                                                               
* VB's default =InputBox= function (pop up a dialog prompting for a value whic   * VB's default =InputBox= function (pop up a dialog prompting for a value whic 
                                                                                                                                                               
* =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used   * =DoEvents=: see [/lang/wait]. [/lang/wait] also replaces the frequently used
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* VScrollBar, HScrollBar: [/def/gambas]' [../../comp/gb.qt/scrollbar] replaces   * VScrollBar, HScrollBar: [/def/gambas]' [../../comp/gb.qt/scrollbar] replaces
                                                                                                                                                               
* Open and Save dialogs: You can use either the Qt or enhanced KDE dialogs in    * Open and Save dialogs: You can use either the [../../comp/gb.qt/qt] or enhan 
                                                                                                                                                               
* Validating text entry: In VB, certain events have a Cancel parameter you can   * Validating text entry: In VB, certain events have a Cancel parameter you can
                                                                                                                                                               
..............................................................................   ..............................................................................
11/22/2006 04:08:06 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
* Unlike VB, you're not required to [../../def/compile] in GUI support if you    * Unlike VB, you're not required to [../../def/compile] in GUI support if you 
                                                                                                                                                               
* Instead of the *[../../lang/with] EVENTS* keyword, you must provide an "even   * Instead of the =\WITH EVENTS= keyword, you must provide an "event name" to o 
                                                                                                                                                               
* [/def/gambas] has the concept of control groups, which allow you to handle e   * [/def/gambas] has the concept of control groups, which allow you to handle e
                                                                                                                                                               
..............................................................................   ..............................................................................
11/22/2006 04:07:31 - gambas
While [/def/gambas] is not intended to be a clone of Microsoft Visual Basic, i   While [/def/gambas] is not intended to be a clone of Microsoft Visual Basic, i
                                                                                                                                                               
There are probably more similarities than differences, but you can't simply co   There are probably more similarities than differences, but you can't simply co 
                                                                                                                                                               
The symbol %vb% will sometimes appear on a page in this documentation to indic   The symbol %vb% will sometimes appear on a page in this documentation to indic
                                                                                                                                                               
+Non-Language-Specific Differences                                               +Non-Language-Specific Differences                                            
                                                                                                                                                               
* VB embeds the class code for each form object into the same file as the form   * VB embeds the class code for each form [../../def/object] into the same file 
                                                                                                                                                               
* [/comp/gb/file] extensions:                                                    * [/comp/gb/file] extensions:                                                 
[[                                                                               [[                                                                            
..............................................................................   ..............................................................................
                                                                                                                                                               
* You can't edit code in Break mode in [/def/gambas]; you need to end program    * You can't edit code in Break mode in [/def/gambas]; you need to end program 
                                                                                                                                                               
* In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val   * In [/def/gambas], simple datatypes (integer, string, etc.) are passed by val 
                                                                                                                                                               
* There is no such thing as a project-wide global variable in [/def/gambas]. A   * There is no such thing as a project-wide global variable in [/def/gambas]. A
                                                                                                                                                               
..............................................................................   ..............................................................................
}                                                                                }                                                                             
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + [/def/gambas] Has It, Visual Basic Doesn't                                  
                                                                                                                                                               
* Unlike VB, you're not required to compile in GUI support if you want to writ   * Unlike VB, you're not required to [../../def/compile] in GUI support if you  
                                                                                                                                                                
                                                                                 * Instead of the *[../../lang/with] EVENTS* keyword, you must provide an "even 
                                                                                                                                                               
* [/def/gambas] has the concept of control groups, which allow you to handle e   * [/def/gambas] has the concept of control groups, which allow you to handle e
                                                                                                                                                               
..............................................................................   ..............................................................................
04/22/2006 02:45:04 - hj.herbert
..............................................................................   ..............................................................................
                                                                                                                                                               
* =End= (end program): see [/lang/quit].                                         * =End= (end program): see [/lang/quit].                                      
                                                                                                                                                               
* Arrays use brackets instead braces. So use =[../../lang/dim] x[9] [../../lan   * Arrays use brackets instead braces. So use =[../../lang/dim] x\[9\] [../../l 
                                                                                                                                                               
* Arrays do not have the extra element for indexing as 1..n, index must always   * Arrays do not have the extra element for indexing as 1..n, index must always
                                                                                                                                                               
..............................................................................   ..............................................................................
04/22/2006 02:15:05 - hj.herbert
..............................................................................   ..............................................................................
                                                                                                                                                               
* =End= (end program): see [/lang/quit].                                         * =End= (end program): see [/lang/quit].                                      
                                                                                                                                                               
                                                                                 * Arrays use brackets instead braces. So use =[../../lang/dim] x[9] [../../lan 
                                                                                                                                                                
                                                                                 * Arrays do not have the extra element for indexing as 1..n, index must always 
                                                                                                                                                                
* =On [/comp/gb/error] Goto=: see [/lang/try], [/lang/catch] and [/lang/finall   * =On [/comp/gb/error] Goto=: see [/lang/try], [/lang/catch] and [/lang/finall
                                                                                                                                                               
* =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb   * =Msgbox=: see [../../comp/gb.qt/message]. Normally you'd want [../../comp/gb
..............................................................................   ..............................................................................
04/21/2006 23:30:46 - hj.herbert
..............................................................................   ..............................................................................
                                                                                                                                                               
* Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins   * Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins
                                                                                                                                                               
* ENUM cannot be used to enumerate integer constants.                            * ENUM cannot be used to enumerate integer constants. Instead you have to defi 
Instead you have to define each ENUM element as a constant.{example              {example                                                                       
 [../../lang/const] ADDITION [../../lang/as] [../../lang/type/integer] = 1        CONST ADDITION AS Integer = 1                                                 
 [../../lang/const] SUBSTRACTION [../../lang/as] [../../lang/type/integer] = 2    CONST SUBSTRACTION AS Integer = 2                                             
}                                                                                }                                                                             
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + [/def/gambas] Has It, Visual Basic Doesn't                                  
                                                                                                                                                               
..............................................................................   ..............................................................................
04/21/2006 23:24:08 - hj.herbert
..............................................................................   ..............................................................................
                                                                                                                                                               
* Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins   * Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins
                                                                                                                                                               
* ENUM cannot be used to enumerate integer constants. Instead you have to defi   * ENUM cannot be used to enumerate integer constants.                          
{example                                                                         Instead you have to define each ENUM element as a constant.{example            
 CONST ADDITION AS Integer = 1                                                    [../../lang/const] ADDITION [../../lang/as] [../../lang/type/integer] = 1     
 CONST SUBSTRACTION AS Integer = 2                                                [../../lang/const] SUBSTRACTION [../../lang/as] [../../lang/type/integer] = 2 
}                                                                                }                                                                             
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + [/def/gambas] Has It, Visual Basic Doesn't                                  
                                                                                                                                                               
..............................................................................   ..............................................................................
04/07/2006 19:36:57 - hj.herbert
..............................................................................   ..............................................................................
                                                                                                                                                               
* Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins   * Thankfully, in [/def/gambas] you cannot use [/lang/goto] to trap errors! Ins
                                                                                                                                                               
                                                                                 * ENUM cannot be used to enumerate integer constants. Instead you have to defi 
                                                                                 {example                                                                       
                                                                                  CONST ADDITION AS Integer = 1                                                 
                                                                                  CONST SUBSTRACTION AS Integer = 2                                             
                                                                                 }                                                                              
+ [/def/gambas] Has It, Visual Basic Doesn't                                     + [/def/gambas] Has It, Visual Basic Doesn't                                  
                                                                                                                                                               
* Unlike VB, you're not required to compile in GUI support if you want to writ   * Unlike VB, you're not required to compile in GUI support if you want to writ
..............................................................................   ..............................................................................
03/09/2006 06:37:43 - gambas
..............................................................................   ..............................................................................
** ...and so on.                                                                 ** ...and so on.                                                              
                                                                                                                                                               
* In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed    * In [/def/gambas], the [/lang/timer]() routine returns the number of elapsed 
                                                                                                                                                                
                                                                                 * Do not use the [../../comp/gb.qt/form].[/comp/gb.qt/form/load] method. It is 
                                                                                                                                                               
01/08/2006 19:03:02 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
* The print command in VB 3.0 did not make a Linefeed. If you used it to print   * The print command in VB 3.0 did not make a Linefeed. If you used it to print
                                                                                                                                                               
* In VB you can use [/lang/mid]() as an instruction to cut out a substring and   * In VB you can use [/lang/mid]() as an instruction to cut out a substring and 
                                                                                                                                                               
* Non-ASCII characters which can be legal for use in identifiers in VB code, a   * Non-ASCII characters which can be legal for use in identifiers in VB code, a
                                                                                                                                                               
..............................................................................   ..............................................................................
01/08/2006 19:02:12 - gambas
..............................................................................   ..............................................................................
                                                                                                                                                               
* [/def/gambas] projects are defined as a directory with a .project file in it   * [/def/gambas] projects are defined as a directory with a .project file in it
                                                                                                                                                               
* [/comp/gb.sdl.image/screen] measurements in VB are done in "twips", units of   * [/comp/gb.sdl.image/screen] measurements in VB are done in "twips", units of 
                                                                                                                                                               
* [/comp/gb.qt/form] controls in [/def/gambas] programs are private by default   * [/comp/gb.qt/form] controls in [/def/gambas] programs are private by default
                                                                                                                                                               
..............................................................................   ..............................................................................
                                                                                                                                                               
* Unless you include =Option Explicit= in a VB module, you don't need to decla   * Unless you include =Option Explicit= in a VB module, you don't need to decla
                                                                                                                                                               
* There's no direct [/def/gambas] equivalent to the Index property of VB form