How to resolve the algorithm GUI component interaction step by step in the PureBasic programming language
How to resolve the algorithm GUI component interaction step by step in the PureBasic programming language
Table of Contents
Problem Statement
Almost every application needs to communicate with the user in some way. Therefore, a substantial part of the code deals with the interaction of program logic with GUI components. Typically, the following is needed:
For a minimal "application", write a program that presents a form with three components to the user:
The field is initialized to zero. The user may manually enter a new value into the field, or increment its value with the "increment" button. Entering a non-numeric value should be either impossible, or issue an error message. Pressing the "random" button presents a confirmation dialog, and resets the field's value to a random value if the answer is "Yes". (This task may be regarded as an extension of the task Simple windowed application).
Let's start with the solution:
Step by Step solution about How to resolve the algorithm GUI component interaction step by step in the PureBasic programming language
Source code in the purebasic programming language
Enumeration
#StringGadget
#Increment
#Random
EndEnumeration
If OpenWindow(0,#PB_Ignore,#PB_Ignore,180,50,"PB-GUI",#PB_Window_SystemMenu)
StringGadget(#StringGadget,5,5,170,20,"",#PB_String_Numeric)
ButtonGadget(#Increment,5,25,80,20, "Increment")
ButtonGadget(#Random, 90,25,80,20, "Random")
Repeat
Event=WaitWindowEvent()
If Event=#PB_Event_Gadget
Select EventGadget()
Case #Increment
CurrentVal=Val(GetGadgetText(#StringGadget))
SetGadgetText(#StringGadget,Str(CurrentVal+1))
Case #Random
Flag=#PB_MessageRequester_YesNo
Answer=MessageRequester("Randomize","Are you sure?",Flag)
If Answer=#PB_MessageRequester_Yes
SetGadgetText(#StringGadget,Str(Random(#MAXLONG)))
EndIf
EndSelect
EndIf
Until Event=#PB_Event_CloseWindow
CloseWindow(0)
EndIf
You may also check:How to resolve the algorithm Floyd-Warshall algorithm step by step in the Ruby programming language
You may also check:How to resolve the algorithm Self numbers step by step in the Python programming language
You may also check:How to resolve the algorithm Conditional structures step by step in the Befunge programming language
You may also check:How to resolve the algorithm First-class functions step by step in the min programming language
You may also check:How to resolve the algorithm RPG attributes generator step by step in the Run BASIC programming language