1
1
Fork 0
mirror of https://github.com/FellippeHeitor/InForm.git synced 2025-01-15 03:49:56 +00:00
InForm/README.md

56 lines
2 KiB
Markdown
Raw Normal View History

2023-05-08 20:53:53 +00:00
# InForm-PE
2022-10-12 19:54:37 +00:00
2018-03-23 15:43:26 +00:00
![InForm logo](InForm/resources/Application-icon-128.png)
2023-05-08 21:18:11 +00:00
A GUI engine and WYSIWYG interface designer for QB64-PE
2016-12-18 15:37:50 +00:00
2023-05-09 02:20:08 +00:00
Wiki: <https://github.com/a740g/InForm-PE/wiki>
2018-03-23 15:47:41 +00:00
2023-05-08 23:26:33 +00:00
## Event-driven QB64-PE programs
2022-10-12 19:54:37 +00:00
2023-05-08 20:53:53 +00:00
InForm-PE's main goal is to generate event-driven QB64-PE applications. This means that you design a graphical user interface with interactive controls and then write the code to respond to such controls once they are manipulated.
2016-12-18 15:37:50 +00:00
## Workflow
2022-10-12 19:54:37 +00:00
2023-05-08 20:53:53 +00:00
After your form looks the way you want it to, click **File > Save** to export its contents and generate a **.bas** source file. Two files are output:
2022-10-12 19:54:37 +00:00
2016-12-18 15:37:50 +00:00
* **.frm**
2023-05-08 20:53:53 +00:00
the generated form in QB64-PE code. This can be loaded back into InForm-PE's designer or manually edited in QB64-PE or any text editor later, if you want to adjust fine details.
2022-10-12 19:54:37 +00:00
2016-12-18 15:37:50 +00:00
* **.bas**
the actual program you will add your code to.
2022-10-12 19:54:37 +00:00
### You add code to respond to events
2016-12-18 15:37:50 +00:00
* *Click*
* *MouseEnter/MouseLeave* (hover)
* *FocusIn/FocusOut*
* *MouseDown/MouseUp* (events preceding a Click)
* *KeyPress*
* *TextChanged* (for text box controls)
* *ValueChanged* (for track bars, lists and dropdown lists)
2022-10-12 19:54:37 +00:00
### There are also events that occur in specific moments, to which you can respond/add code
2016-12-18 15:37:50 +00:00
* *BeforeInit*, triggered just before the form is shown.
* *OnLoad*, triggered right after the form is first shown.
* *BeforeUpdateDisplay*, triggered everytime the form is about to be repainted.
* *BeforeUnload*, triggered when the user tries to close the program, either via clicking the window's X button, right click in the task bar -> Close or with Alt+F4 (Windows only).
2018-03-23 15:47:41 +00:00
* *FormResized*, triggered when a form with the CanResize property is resized at runtime.
2023-05-08 23:26:33 +00:00
## Setup
Install Inform-PE and QB64-PE side-by-side in their own directories. There is no need to copy InForm-PE files to the QB64-PE directory. The following directory setup is recommended.
```text
<some-drive-or-directory>
|
2023-05-09 02:34:28 +00:00
|-------InForm-PE>
| |
| |-------<UiEditor.exe>
2023-05-08 23:26:33 +00:00
|
|-------<QB64pe>
2023-05-09 02:34:28 +00:00
|
|-------<qb64pe.exe>
2023-05-08 23:26:33 +00:00
```