Application and RunLoop
For a GUI application to work it needs to run an event loop
(sometimes called a runloop) that processes user interactions
and drawing events. In Fyne this is started using the App.Run()
or Window.ShowAndRun()
functions. One of these must be called
from the end of your setup code in the main()
function.
An application should only have one runloop and so you should only
call Run()
once in your code. Calling it a second time will cause
errors.
An app can be quit directly by calling App.Quit()
but this should
only be called in response to a user event to avoid surprises.
See also that functions executed after Run()
will not be called
until the application exits.
Example Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 package main import ( "fmt" "fyne.io/fyne/app" "fyne.io/fyne/widget" ) func main() { myApp := app.New() myWindow := myApp.NewWindow("Hello") myWindow.SetContent(widget.NewLabel("Hello")) myWindow.Show() myApp.Run() tidyUp() } func tidyUp() { fmt.Println("Exited") }