UserGuide

Difference between revisions of "Welcome"

From Xojo Documentation

(Installing Xojo: formatting)
m (Reverted edits by Afoley (talk) to last revision by Gperlman)
(Tag: Rollback)
Line 5: Line 5:
 
Xojo is a rapid application development (RAD) tool with a user interface (UI) builder that lets you create your app's user interface with little to no programming required. If you know how to drag and drop, you can build the UI using the wide variety of built-in controls, making it easy to create powerful, multi-platform desktop, web and iOS applications faster than you ever thought possible. If you are new to programming, you will find Xojo’s object-oriented programming language easy to learn. If you are an experienced programmer, you will find the language to be powerful and robust. In either case, you will find you can accomplish quite a bit in a short amount of time.
 
Xojo is a rapid application development (RAD) tool with a user interface (UI) builder that lets you create your app's user interface with little to no programming required. If you know how to drag and drop, you can build the UI using the wide variety of built-in controls, making it easy to create powerful, multi-platform desktop, web and iOS applications faster than you ever thought possible. If you are new to programming, you will find Xojo’s object-oriented programming language easy to learn. If you are an experienced programmer, you will find the language to be powerful and robust. In either case, you will find you can accomplish quite a bit in a short amount of time.
  
One way Xojo makes app development faster and easier than traditional tools is by removing the need to learn how to use the complex Application Programming Interface (API) for the operating system. Instead, you use the Xojo Programming Language and Framework which provides a simpler and faster way to create your apps. Using Xojo, you can develop apps for Windows, Mac and Linux from your platform of choice (macOS compilation and iOS app development require a Mac).
+
One way Xojo makes app development faster and easier than traditional tools is by removing the need to learn how to use the complex Application Programming Interface (API) for the operating system. Instead, you use the Xojo Programming Language and Framework which provides a simpler and faster way to create your apps.
 +
 
 +
Xojo doesn't force you to use a specific OS. Are you a Mac developer that wants to create Windows apps? You can do that with Xojo right from your Mac. Do you use Windows, but want to create Mac apps? You can do that from within Windows. In fact, you can develop using Xojo on Windows, Mac or Linux to create apps that work on Windows, Mac, Linux or web (iOS app development does require a Mac, however).
  
 
== About the Xojo Programming Language ==
 
== About the Xojo Programming Language ==
Line 19: Line 21:
  
 
Xojo is a great programming language for creating all types of apps, from simple "hello, world" to powerful enterprise software. With Xojo you'll create your apps in less time than before at less cost, making it a great investment for you or your company. It is a wonderful way to create apps for Windows, Mac, Linux, iOS, web and Raspberry Pi and continues to evolve with new features and capabilities added on a regular basis (quarterly, in fact). Our goals with Xojo have always been to make programming simpler. We can't wait to see what you create with it!
 
Xojo is a great programming language for creating all types of apps, from simple "hello, world" to powerful enterprise software. With Xojo you'll create your apps in less time than before at less cost, making it a great investment for you or your company. It is a wonderful way to create apps for Windows, Mac, Linux, iOS, web and Raspberry Pi and continues to evolve with new features and capabilities added on a regular basis (quarterly, in fact). Our goals with Xojo have always been to make programming simpler. We can't wait to see what you create with it!
 
== Writing Code ==
 
Odds are you want your apps to do something, so you will have to write some code. You do this using the Xojo Programming Language. The Xojo programming commands that you write are referred to as code.
 
 
To write code you use the Code Editor, which is essentially a text editor specifically designed for writing and editing Xojo code. Your code consists of a series of lines, with each line containing Xojo language commands. Like with any text editor, the text you write in the Code Editor does not "wrap" when you reach the end of the line. Instead the Code Editor scrolls. You create new lines by pressing Return.
 
 
The Xojo language consists of the series of commands that you write. With Xojo you generally have one command per line of code.
 
 
== Where Does the Code Go? ==
 
Xojo does not provide a big blank text editor for you to write your code. Code belongs to a project item method or a control on a layout. If you recall from the simple example at the beginning, the code was placed in the Action event handler for a button. Event Handlers are a common place to put your code, but you can also create your own methods to contain code.
 
 
You can add Event Handlers to any control in your layout by selecting the control and choosing "Event Handler" from the Add button on the Layout Editor toolbar, the Insert button on the main toolbar or the Insert menu.
 
 
You can add your own methods (which can be called by other code in your app) by choosing "Method" from the Add or Insert options. A method is a container for your code. Event Handlers are a special type of method.
 
  
 
== Installing Xojo ==
 
== Installing Xojo ==
You can download Xojo for your operating system (Windows, Mac or Linux) from the [https://xojo.com/download/ Xojo Download page]. You'll have to first create an account, after that Xojo is free to use. You can purchase a license when you are ready to create stand-alone apps. Xojo works on all current operation systems. For more specifics, you can review the Xojo [[Resources:System Requirements|System Requirements]].
+
You can download Xojo for your operating system (Windows, Mac or Linux) from the Xojo Download page. You'll have to first create an account (your Xojo ID), but after that Xojo is free to use. You can purchase a license when you are ready to create stand-alone apps. Xojo works on all current operation systems. For more specifics, you can review the Xojo System Requirements.
  
After the download has completed, you can run the installer (or copy the files) for your OS. Once the installation is finished (it only takes a minute or so), launch Xojo and begin creating your first app.
+
After the download has completed, you can run the installer (or copy the files) for your OS. Once the installation is finished (it only takes a minute or so), you can start Xojo to begin creating your first app.
  
 
== Starting with Xojo ==
 
== Starting with Xojo ==
After launching Xojo, the Getting Started window appears. You can choose to check out some resources now or you skip this window and go right to starting your first project.
+
After starting Xojo, the Project Chooser window appears. In order for you to quickly dive right into Xojo, follow these steps to create your first (admittedly simple) desktop app.
After you close the Getting Started window, the Project Chooser window appears. Choose the type of project you want to start with. Then visit the [[GettingStarted:Welcome|Getting Started with Xojo]] page to choose a QuickStart or Tutorial to begin developing for your platform of choice.
+
# In the Project Chooser, choose "Desktop" and fill in the App Name as "MyFirstApp" and click OK. This displays the IDE (or Integrated Development Environment) with the Workspace for the project. This is where you work on your Xojo projects, creating UI layouts and writing code. Don't worry about everything that you see there, it will be covered later in the User Guide.
[[File:project chooser.png|center|thumb|610x610px]]
+
# Now, drag a Button from the Control Library on the right onto the Window layout in the center. You can position the button anywhere you like within the window.
 +
# With the button selected, press Return to change its caption to "Click Me".
 +
# Double-click the button on the layout to add an Event Handler. This is where you'll put a single line of code to display a message when the button is clicked.
 +
# After double-clicking the button, the Add Event Handler window appears.<br />[[File:Add Handler Dialog.png|frameless]]<br />
 +
# Select Action and click OK to add the Action event handler. This event handler is called when the button is pressed.
 +
# The Code Editor now appears. Add this simple line of code to display a message: <rbcode> MessageBox("Welcome to Xojo!")</rbcode>
 +
# Click the Run button on the toolbar to run your app.
 +
# Click the button to display the message.<br />[[File:WelcomeToXojo.png|frameless|300px]]
 +
That's it. You've now created an app. Although Xojo makes it easy to create simple apps, it can also create much larger and more powerful apps just as easily. In fact, Xojo is actually written in Xojo!
 +
 
 
== User Guide Contents ==
 
== User Guide Contents ==
 
=== Fundamentals ===
 
=== Fundamentals ===
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">IDE Overview
+
<div style="font-weight:bold;line-height:1.6;">IDE Overview</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Navigator|Navigator]]
 
* [[UserGuide:Navigator|Navigator]]
 
* [[UserGuide:Layout Editor|Layout Editor]]
 
* [[UserGuide:Layout Editor|Layout Editor]]
Line 62: Line 60:
 
* [[UserGuide:Project Types|Project Types]]
 
* [[UserGuide:Project Types|Project Types]]
 
* [[UserGuide:Preferences|Preferences]]
 
* [[UserGuide:Preferences|Preferences]]
* [[UserGuide:Keyboard Shortcuts|Keyboard Shortcuts]]</div></div>
+
* [[UserGuide:Keyboard Shortcuts|Keyboard Shortcuts]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Xojo Programming Language
+
<div style="font-weight:bold;line-height:1.6;">Xojo Programming Language</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Variables and Constants| Variables and Constants]]
 
* [[UserGuide:Variables and Constants| Variables and Constants]]
 
* [[UserGuide:Data Types|Data Types]]
 
* [[UserGuide:Data Types|Data Types]]
Line 76: Line 76:
 
* [[UserGuide:Enumerations|Enumerations]]
 
* [[UserGuide:Enumerations|Enumerations]]
 
* [[UserGuide:Modules|Modules]]
 
* [[UserGuide:Modules|Modules]]
* [[UserGuide:Advanced Language Features|Advanced Language Features]]</div></div>
+
* [[UserGuide:Advanced Language Features|Advanced Language Features]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Object-Oriented Programming
+
<div style="font-weight:bold;line-height:1.6;">Object-Oriented Programming</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:OOP Classes|OOP Classes]]
 
* [[UserGuide:OOP Classes|OOP Classes]]
 
* [[UserGuide:OOP Design Concepts|OOP Design Concepts]]
 
* [[UserGuide:OOP Design Concepts|OOP Design Concepts]]
Line 86: Line 88:
 
* [[UserGuide:Interfaces|Interfaces]]
 
* [[UserGuide:Interfaces|Interfaces]]
 
* [[UserGuide:Advanced OOP Features|Advanced OOP Features]]
 
* [[UserGuide:Advanced OOP Features|Advanced OOP Features]]
* [[UserGuide:Subclassing Examples|Subclassing Examples]]</div></div>
+
* [[UserGuide:Subclassing Examples|Subclassing Examples]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">App Structure
+
<div style="font-weight:bold;line-height:1.6;">App Structure</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:App Icons|App Icons]]
 
* [[UserGuide:App Icons|App Icons]]
 
* [[UserGuide:Desktop Apps|Desktop Apps]]
 
* [[UserGuide:Desktop Apps|Desktop Apps]]
Line 107: Line 111:
 
** [[UserGuide:Submitting to TestFlight|Submitting to TestFlight]]
 
** [[UserGuide:Submitting to TestFlight|Submitting to TestFlight]]
 
** [[UserGuide:Deploy to Device With Free Xcode Provisioning Profile|Deploy to Device With Free Xcode Provisioning Profile]]
 
** [[UserGuide:Deploy to Device With Free Xcode Provisioning Profile|Deploy to Device With Free Xcode Provisioning Profile]]
* [[UserGuide:Console Apps|Console Apps]]</div></div>
+
* [[UserGuide:Console Apps|Console Apps]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Debugging
+
<div style="font-weight:bold;line-height:1.6;">Debugging</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Debugger Usage|Debugger Usage]]
 
* [[UserGuide:Debugger Usage|Debugger Usage]]
 
* [[UserGuide:Exception Handling|Exception Handling]]
 
* [[UserGuide:Exception Handling|Exception Handling]]
 
* [[UserGuide:Remote Debugging|Remote Debugging]]
 
* [[UserGuide:Remote Debugging|Remote Debugging]]
* [[UserGuide:Code Profiler|Code Profiler]]</div></div>
+
* [[UserGuide:Code Profiler|Code Profiler]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Build Automation
+
<div style="font-weight:bold;line-height:1.6;">Build Automation</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:IDE Scripting|IDE Scripting]]
 
* [[UserGuide:IDE Scripting|IDE Scripting]]
 
** [[UserGuide:IDE Scripting Building Commands|IDE Scripting Building Commands]]
 
** [[UserGuide:IDE Scripting Building Commands|IDE Scripting Building Commands]]
Line 126: Line 134:
 
** [[UserGuide:IDE Scripting Project Commands|IDE Scripting Project Commands]]
 
** [[UserGuide:IDE Scripting Project Commands|IDE Scripting Project Commands]]
 
** [[UserGuide:IDE Scripting String Commands|IDE Scripting String Commands]]
 
** [[UserGuide:IDE Scripting String Commands|IDE Scripting String Commands]]
* [[UserGuide:IDE Communicator|IDE Communicator]]</div></div>
+
* [[UserGuide:IDE Communicator|IDE Communicator]]
 +
</div></div>
  
  
 
=== User Interface ===
 
=== User Interface ===
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">General
+
<div style="font-weight:bold;line-height:1.6;">General</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Event Driven Programming|Event Driven Programming]]
 
* [[UserGuide:Event Driven Programming|Event Driven Programming]]
 
* [[UserGuide:Me vs. Self|Me vs. Self]]
 
* [[UserGuide:Me vs. Self|Me vs. Self]]
* [[UserGuide:UI Design Tips|UI Design Tips]]</div></div>
+
* [[UserGuide:UI Design Tips|UI Design Tips]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Desktop
+
<div style="font-weight:bold;line-height:1.6;">Desktop</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Desktop Windows| Windows]]
 
* [[UserGuide:Desktop Windows| Windows]]
 
* [[UserGuide:Desktop Control Hierarchy| Control Hierarchy]]
 
* [[UserGuide:Desktop Control Hierarchy| Control Hierarchy]]
Line 182: Line 194:
 
* [[UserGuide:Desktop Container Controls| Containers]]
 
* [[UserGuide:Desktop Container Controls| Containers]]
 
* [[UserGuide:Desktop Drag and Drop| Drag and Drop]]
 
* [[UserGuide:Desktop Drag and Drop| Drag and Drop]]
* [[UserGuide:Desktop Custom Controls| Custom Controls]]</div></div>
+
* [[UserGuide:Desktop Custom Controls| Custom Controls]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Web
+
<div style="font-weight:bold;line-height:1.6;">Web</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Web Pages | Web Pages]]
 
* [[UserGuide:Web Pages | Web Pages]]
 
* [[UserGuide:Changing the Appearance of Controls| Changing the Appearance of Controls]]
 
* [[UserGuide:Changing the Appearance of Controls| Changing the Appearance of Controls]]
Line 217: Line 231:
 
* [[UserGuide:Web Container | Container]]
 
* [[UserGuide:Web Container | Container]]
 
* [[UserGuide:Web Menus| Menus]]
 
* [[UserGuide:Web Menus| Menus]]
* [[UserGuide:Using Google Fonts in Web Apps| Using Google Fonts]]</div></div>
+
* [[UserGuide:Using Google Fonts in Web Apps| Using Google Fonts]]
 +
</div></div>
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">iOS
+
<div style="font-weight:bold;line-height:1.6;">iOS</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:iOS Auto Layout| iOS Auto Layout]]
 
* [[UserGuide:iOS Auto Layout| iOS Auto Layout]]
 
* [[UserGuide:iOS Countdown Picker| iOS Countdown Picker]]
 
* [[UserGuide:iOS Countdown Picker| iOS Countdown Picker]]
Line 256: Line 272:
 
* [[UserGuide:Mobile Text Field| Text Field]]
 
* [[UserGuide:Mobile Text Field| Text Field]]
 
* [[UserGuide:Mobile Toolbar Button| Toolbar Button]]
 
* [[UserGuide:Mobile Toolbar Button| Toolbar Button]]
* [[UserGuide:Mobile Toolbars| Toolbars]]</div></div>
+
* [[UserGuide:Mobile Toolbars| Toolbars]]
 +
</div></div>
 +
 
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Framework
+
<div style="font-weight:bold;line-height:1.6;">Framework</div>
 +
<div class="mw-collapsible-content">
 
* [[:Category:User Guide Framework File Management|File Management]]
 
* [[:Category:User Guide Framework File Management|File Management]]
 
* [[:Category:User Guide Framework Text Handling|Text Handling]]
 
* [[:Category:User Guide Framework Text Handling|Text Handling]]
Line 273: Line 292:
 
=== Technical Information ===
 
=== Technical Information ===
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:400px; overflow:auto;">
<div style="font-weight:bold;line-height:1.6;">Code Management
+
<div style="font-weight:bold;line-height:1.6;">Code Management</div>
 +
<div class="mw-collapsible-content">
 
* [[UserGuide:Coding Guidelines| Coding Guidelines]]
 
* [[UserGuide:Coding Guidelines| Coding Guidelines]]
 
* [[UserGuide:Sharing Code| Sharing Code]]
 
* [[UserGuide:Sharing Code| Sharing Code]]
 
* [[UserGuide:Source Control| Source Control]]
 
* [[UserGuide:Source Control| Source Control]]
* [[UserGuide:Custom Code Reformatting| Custom Code Reformatting]]</div></div>
+
* [[UserGuide:Custom Code Reformatting| Custom Code Reformatting]]
 +
</div></div>
  
  
Line 283: Line 304:
 
[[:Category:User Guide|View All User Guide Topics]]
 
[[:Category:User Guide|View All User Guide Topics]]
  
[[Category:User Guide]]</div>
+
[[Category:User Guide]]

Revision as of 20:23, 17 May 2021

Welcome to Xojo, an integrated software developer tool and programming language that is the easiest way to make desktop, web and iOS apps. With Xojo you can create desktop apps for Windows, Mac and Linux (including Raspberry Pi), web apps for all popular web browsers and iOS apps for iPhones, iPads and other iOS devices.

Workspace on macOS.png

Xojo is a rapid application development (RAD) tool with a user interface (UI) builder that lets you create your app's user interface with little to no programming required. If you know how to drag and drop, you can build the UI using the wide variety of built-in controls, making it easy to create powerful, multi-platform desktop, web and iOS applications faster than you ever thought possible. If you are new to programming, you will find Xojo’s object-oriented programming language easy to learn. If you are an experienced programmer, you will find the language to be powerful and robust. In either case, you will find you can accomplish quite a bit in a short amount of time.

One way Xojo makes app development faster and easier than traditional tools is by removing the need to learn how to use the complex Application Programming Interface (API) for the operating system. Instead, you use the Xojo Programming Language and Framework which provides a simpler and faster way to create your apps.

Xojo doesn't force you to use a specific OS. Are you a Mac developer that wants to create Windows apps? You can do that with Xojo right from your Mac. Do you use Windows, but want to create Mac apps? You can do that from within Windows. In fact, you can develop using Xojo on Windows, Mac or Linux to create apps that work on Windows, Mac, Linux or web (iOS app development does require a Mac, however).

About the Xojo Programming Language

Xojo is an integrated tool, but it is also a programming language for Windows, Mac, Linux, iOS, web and Raspberry Pi. Xojo builds on languages such as Visual Basic and Java to provide the fastest and easiest way for you to create the apps you need for the platforms you use. Xojo uses safe programming patterns (strong data typing, for example), is object-oriented and has modern programming features such as introspection, extension methods and delegates. Programming with Xojo is fast, easy and most importantly, fun!

Although maybe you haven't heard of it before, Xojo has been around for many years. Since 1998, in fact. Xojo was originally called REALbasic, then eventually Real Studio, but the programming language remains largely the same. Xojo was one of the first languages to use Automatic Reference Counting (ARC), something that other languages such as Swift and Objective-C now use. Although Xojo is easy to learn and use, it also has advanced features such as namespaces, extension methods, exception handling, introspection, delegates and more.

And Xojo is always being modernized. For 64-bit apps (and Raspberry Pi), Xojo uses the LLVM compiler tools to compile your apps for the best possible performance. LLVM are the same compiler tools used by Apple with Swift and Objective-C. A new Xojo framework is being made available, which uses a more modern design, standardizes API calls and takes advantage of new technologies. Xojo is ready for the future and the next 20 years of software development.

Xojo feels familiar to programmers who have used other languages such as Visual Basic, Java and C# because it uses a similar object-oriented programming model, with similar data types and constructs. Using Xojo, you'll be able to create apps even faster than you ever thought possible.

Xojo is also friendly to new programmers. A big problem with most programming languages is that they are overcomplicated and overwhelm those new to them. Xojo has a powerful, integrated code editor with auto-complete that makes it easy to learn the language. The Xojo IDE is also incredibly easy to use, making experimentation (one of the best ways to learn) fast and fun.

Xojo is a great programming language for creating all types of apps, from simple "hello, world" to powerful enterprise software. With Xojo you'll create your apps in less time than before at less cost, making it a great investment for you or your company. It is a wonderful way to create apps for Windows, Mac, Linux, iOS, web and Raspberry Pi and continues to evolve with new features and capabilities added on a regular basis (quarterly, in fact). Our goals with Xojo have always been to make programming simpler. We can't wait to see what you create with it!

Installing Xojo

You can download Xojo for your operating system (Windows, Mac or Linux) from the Xojo Download page. You'll have to first create an account (your Xojo ID), but after that Xojo is free to use. You can purchase a license when you are ready to create stand-alone apps. Xojo works on all current operation systems. For more specifics, you can review the Xojo System Requirements.

After the download has completed, you can run the installer (or copy the files) for your OS. Once the installation is finished (it only takes a minute or so), you can start Xojo to begin creating your first app.

Starting with Xojo

After starting Xojo, the Project Chooser window appears. In order for you to quickly dive right into Xojo, follow these steps to create your first (admittedly simple) desktop app.

  1. In the Project Chooser, choose "Desktop" and fill in the App Name as "MyFirstApp" and click OK. This displays the IDE (or Integrated Development Environment) with the Workspace for the project. This is where you work on your Xojo projects, creating UI layouts and writing code. Don't worry about everything that you see there, it will be covered later in the User Guide.
  2. Now, drag a Button from the Control Library on the right onto the Window layout in the center. You can position the button anywhere you like within the window.
  3. With the button selected, press Return to change its caption to "Click Me".
  4. Double-click the button on the layout to add an Event Handler. This is where you'll put a single line of code to display a message when the button is clicked.
  5. After double-clicking the button, the Add Event Handler window appears.
    Add Handler Dialog.png
  6. Select Action and click OK to add the Action event handler. This event handler is called when the button is pressed.
  7. The Code Editor now appears. Add this simple line of code to display a message:
    MessageBox("Welcome to Xojo!")
  8. Click the Run button on the toolbar to run your app.
  9. Click the button to display the message.
    WelcomeToXojo.png

That's it. You've now created an app. Although Xojo makes it easy to create simple apps, it can also create much larger and more powerful apps just as easily. In fact, Xojo is actually written in Xojo!

User Guide Contents

Fundamentals


User Interface