Can I pass a variable from one tab to another in a panel?
Can I pass a variable from one tab to another in a panel?
Is it possible to pass a variable from one tab to another tab in a PanelGadget?
http://www.oldtimeradiotoday.com - Listen to or download classic old time radio broadcasts.
Re: Can I pass a variable from one tab to another in a panel?
What do you mean? PanelGadgets don't hold variables.
Re: Can I pass a variable from one tab to another in a panel?
I have a Paneladget with 4 tabs. In the first tab I have a number of StringGadgets. In the second tab I also have a number of StringGadgets. I would like to be able to get the text from one of the string Gadgets in the first tab, and place it into one of the StringGadgets in the second tab. I assumed that I would get the text from the first StringGadget and place it into a Global variable,
Example
and then when the second tab is opened, the contents of the variable from the first tab would be copied into one of the StringGadgets in the second tab.
Example
Example
Code: Select all
lname = GetGadgetText(#lastname)
Example
Code: Select all
SetGadgetText(#lastname, lname)
Last edited by Columbo on Sun Jun 13, 2021 2:56 am, edited 1 time in total.
http://www.oldtimeradiotoday.com - Listen to or download classic old time radio broadcasts.
Re: Can I pass a variable from one tab to another in a panel?
I see. And your example was correct, too. But you can also do it like this if you don't want to use a variable:
Code: Select all
SetGadgetText(targetgad,GetGadgetText(sourcegad))
Re: Can I pass a variable from one tab to another in a panel?
Thanks Barry, I tried that but it does not work. The fields in each Tab are set up in a container. I'm wondering if that somehow affects copying GadgetText from one Tab to another?
Here is how the panel is set up.
Here is how the panel is set up.
Code: Select all
PanelGadget(#mainPanel, centerPanel, 25, 1040, 630) ;was 120
;--------[ Get Member ]------------------
AddGadgetItem(#mainPanel, -1, "Get Member", 0)
ContainerGadget(#containerGet, 8, 8, 1020, 590, #PB_Container_Single)
;----------------{ Setup Labels ]----------------
TextGadget(#labelGetFirstName, 20, 60, 75, 20, "First Name : ")
TextGadget(#labelGetLastName, 20, 90, 75, 20, "Last Name : ")
TextGadget(#labelGetAddress, 20, 120, 75, 20, "Address : ")
TextGadget(#labelGetAptNo, 20, 150, 75, 20, "Apt No. : ")
TextGadget(#labelGetCity, 20, 180, 75, 20, "City :")
TextGadget(#labelGetProvince, 20, 210, 75, 20, "Province :")
TextGadget(#labelGetPostalCode, 20, 240, 75, 20, "Postal Code :")
TextGadget(#labelGetPhoneNo, 20, 270, 75, 20, "Phone No :")
TextGadget(#labelGetGender, 20, 300, 75, 20, "Gender :")
TextGadget(#labelGetEmployeeNo, 20, 330, 75, 20, "Employee No. :")
TextGadget(#labelGetSeniorityDate, 20, 360, 75, 20, "Seniority Date. :")
TextGadget(#labelGetDeptNo, 450, 60, 75, 20, "Dept. No. : ")
TextGadget(#labelGetDeptAddress, 450, 90, 75, 20, "Address : ")
TextGadget(#labelGetDeptCity, 450, 120, 75, 20, "City : ")
TextGadget(#labelGetDeptProvince, 450, 150, 75, 20, "Province : ")
TextGadget(#labelGetDeptPostalCode, 450, 180, 80, 20, "Postal Code : ")
TextGadget(#labelGetDeptPhoneNo, 450, 210, 75, 20, "Phone No. : ")
;----------------{ Setup Gadgets Tab 1 ]----------------
StringGadget(#getFirstName, 100, 60, 90, 20, "")
StringGadget(#getLastName, 100, 90, 110, 20, "")
StringGadget(#getAddress, 100, 120, 160, 20, "")
StringGadget(#getAptNo, 100, 150, 60, 20, "")
StringGadget(#getCity, 100, 180, 160, 20, "")
StringGadget(#getProvince, 100, 210, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#getPostalCode, 100, 240, 75, 20, "")
StringGadget(#getPhoneNo, 100, 270, 90, 20, "")
TextGadget(#labelGetPhoneFormat, 200, 275, 115, 20, "(# # #) # # # - # # # #")
StringGadget(#getGender, 100, 300, 20, 20, "")
StringGadget(#getEmployeeNo, 100, 330, 90, 20, "")
StringGadget(#getSeniorityDate, 100, 360, 110, 20, "")
TextGadget(#labelGetSeniorityFormat, 220, 365, 85, 20, "( MM/DD/YYYY )")
StringGadget(#getDeptNo, 525, 60, 60, 20, "")
StringGadget(#getDeptAddress, 525, 90, 160, 20, "")
StringGadget(#getDeptCity, 525, 120, 160, 20, "")
StringGadget(#getDeptProvince, 525, 150, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#getDeptPostalCode, 525, 180, 75, 20, "")
StringGadget(#getDeptPhoneNo, 525, 210, 90, 20, "")
CheckBoxGadget(#getHasGrievance, 700, 210, 130, 20, "Has Active Grievance")
TextGadget(#labelGetNotes, 450, 240, 60, 20, "Notes")
EditorGadget(#getDeptNotes, 450, 260, 550, 250, #PB_Editor_WordWrap)
StringGadget(#Getsearch, 820, 60, 150, 20, "", #SS_CENTERIMAGE) ;Search Box (At top right of screen)
ButtonImageGadget(#GetsearchIcon, 980, 60, 20, 20, ImageID(#img0))
ButtonGadget(#GethasGrievanceBtn, 845, 210, 90, 20, "View Grievances")
DisableGadget(#GethasGrievanceBtn, #True)
ButtonGadget(#getMemberBtn, 60, 550, 90, 20, "Get Member")
ButtonGadget(#cancelGetBtn, 200, 550, 90, 20, "Cancel")
ButtonGadget(#clearGetMemberBtn, 350, 550, 90, 20, "Clear")
ButtonGadget(#getMemExitBtn, 870, 550, 90, 20, "Exit")
SetActiveGadget(#getFirstName)
CloseGadgetList()
;--------[ Edit Member ]------------------
AddGadgetItem(#mainPanel, -1, "Edit Member", 0)
ContainerGadget(#containerEdit, 8, 8, 1020, 590, #PB_Container_Single)
;----------------{ Setup Labels ]----------------
TextGadget(#labelEditFirstName, 20, 60, 75, 20, "First Name : ")
TextGadget(#labelEditLastName, 20, 90, 75, 20, "Last Name : ")
TextGadget(#labelEditAddress, 20, 120, 75, 20, "Address : ")
TextGadget(#labelEditAptNo, 20, 150, 75, 20, "Apt No. : ")
TextGadget(#labelEditCity, 20, 180, 75, 20, "City :")
TextGadget(#labelEditProvince, 20, 210, 75, 20, "Province :")
TextGadget(#labelEditPostalCode, 20, 240, 75, 20, "Postal Code :")
TextGadget(#labelEditPhoneNo, 20, 270, 75, 20, "Phone No :")
TextGadget(#labelEditGender, 20, 300, 75, 20, "Gender :")
TextGadget(#labelEditEmployeeNo, 20, 330, 75, 20, "Employee No. :")
TextGadget(#labelEditSeniorityDate, 20, 360, 75, 20, "Seniority Date. :")
TextGadget(#labelEditDeptNo, 450, 60, 75, 20, "Dept. No. : ")
TextGadget(#labelEditDeptAddress, 450, 90, 75, 20, "Address : ")
TextGadget(#labelEditDeptCity, 450, 120, 75, 20, "City : ")
TextGadget(#labelEditDeptProvince, 450, 150, 75, 20, "Province : ")
TextGadget(#labelEditDeptPostalCode, 450, 180, 80, 20, "Postal Code : ")
TextGadget(#labelEditDeptPhoneNo, 450, 210, 75, 20, "Phone No. : ")
;----------------{ Setup Gadgets Tab 2 ]----------------
StringGadget(#editFirstName, 100, 60, 90, 20, "")
StringGadget(#editLastName, 100, 90, 110, 20, "")
StringGadget(#editAddress, 100, 120, 160, 20, "")
StringGadget(#editAptNo, 100, 150, 60, 20, "")
StringGadget(#editCity, 100, 180, 160, 20, "")
StringGadget(#editProvince, 100, 210, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#editPostalCode, 100, 240, 75, 20, "")
StringGadget(#editPhoneNo, 100, 270, 90, 20, "")
TextGadget(#labelEditPhoneFormat, 200, 275, 115, 20, "(# # #) # # # - # # # #")
StringGadget(#editGender, 100, 300, 20, 20, "")
StringGadget(#editEmployeeNo, 100, 330, 90, 20, "")
StringGadget(#editSeniorityDate, 100, 360, 110, 20, "")
TextGadget(#labelEditSeniorityFormat, 220, 365, 85, 20, "( MM/DD/YYYY )")
StringGadget(#editDeptNo, 525, 60, 60, 20, "")
StringGadget(#editDeptAddress, 525, 90, 160, 20, "")
StringGadget(#editDeptCity, 525, 120, 160, 20, "")
StringGadget(#editDeptProvince, 525, 150, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#editDeptPostalCode, 525, 180, 75, 20, "")
StringGadget(#editDeptPhoneNo, 525, 210, 90, 20, "")
TextGadget(#labelEditNotes, 450, 240, 60, 20, "Notes")
EditorGadget(#editDeptNotes, 450, 260, 550, 250, #PB_Editor_WordWrap)
StringGadget(#Editsearch, 820, 60, 150, 20, "", #SS_CENTERIMAGE) ;Search Box (At top right of screen)
ButtonImageGadget(#EditsearchIcon, 980, 60, 20, 20, ImageID(#img1))
ButtonGadget(#editMemberBtn, 60, 550, 90, 20, "Edit Member")
ButtonGadget(#cancelEditBtn, 200, 550, 90, 20, "Cancel")
ButtonGadget(#clearEditMemberBtn, 350, 550, 90, 20, "Clear")
ButtonGadget(#editMemExitBtn, 870, 550, 90, 20, "Exit")
CloseGadgetList()
http://www.oldtimeradiotoday.com - Listen to or download classic old time radio broadcasts.
Re: Can I pass a variable from one tab to another in a panel?
Hello Columbo,
When do you want to copy a data from a gadget to an other one ? Which condition ? (After a click on a button "copy" ? Every 100 milliseconds ? While a string gadget has been modified ? When the mouse is over an object ? After a drag and drop ? Etc... )
Thank you
When do you want to copy a data from a gadget to an other one ? Which condition ? (After a click on a button "copy" ? Every 100 milliseconds ? While a string gadget has been modified ? When the mouse is over an object ? After a drag and drop ? Etc... )
Thank you
Re: Can I pass a variable from one tab to another in a panel?
When the user is in Tab1, which has all of the StringGadgets populated, I want it to copy the contents of two StringGadgets in Tab1 to two StringGadgets in Tab2 as soon as the user clicks on Tab2 and Tab2 opens.
Thanks.
Thanks.
http://www.oldtimeradiotoday.com - Listen to or download classic old time radio broadcasts.
Re: Can I pass a variable from one tab to another in a panel?
You should be able to do it with BindGadgetEvent(#mainPanel, @ChangePanelTab(), #PB_EventType_Change)
Code: Select all
Enumeration FormWindow
#Window_0
EndEnumeration
Enumeration FormGadget
#mainPanel
#containerGet
#labelGetFirstName
#labelGetLastName
#labelGetAddress
#labelGetAptNo
#labelGetCity
#labelGetProvince
#labelGetPostalCode
#labelGetPhoneNo
#labelGetGender
#labelGetEmployeeNo
#labelGetSeniorityDate
#labelGetDeptNo
#labelGetDeptAddress
#labelGetDeptCity
#labelGetDeptProvince
#labelGetDeptPostalCode
#labelGetDeptPhoneNo
#getFirstName
#getLastName
#getAddress
#getAptNo
#getCity
#getProvince
#getPostalCode
#getPhoneNo
#labelGetPhoneFormat
#getGender
#getEmployeeNo
#getSeniorityDate
#labelGetSeniorityFormat
#getDeptNo
#getDeptAddress
#getDeptCity
#getDeptProvince
#getDeptPostalCode
#getDeptPhoneNo
#getHasGrievance
#labelGetNotes
#getDeptNotes
#Getsearch
#GetsearchIcon
#GethasGrievanceBtn
#getMemberBtn
#cancelGetBtn
#clearGetMemberBtn
#getMemExitBtn
#containerEdit
#labelEditFirstName
#labelEditLastName
#labelEditAddress
#labelEditAptNo
#labelEditCity
#labelEditProvince
#labelEditPostalCode
#labelEditPhoneNo
#labelEditGender
#labelEditEmployeeNo
#labelEditSeniorityDate
#labelEditDeptNo
#labelEditDeptAddress
#labelEditDeptCity
#labelEditDeptProvince
#labelEditDeptPostalCode
#labelEditDeptPhoneNo
#editFirstName
#editLastName
#editAddress
#editAptNo
#editCity
#editProvince
#editPostalCode
#editPhoneNo
#labelEditPhoneFormat
#editGender
#editEmployeeNo
#editSeniorityDate
#labelEditSeniorityFormat
#editDeptNo
#editDeptAddress
#editDeptCity
#editDeptProvince
#editDeptPostalCode
#editDeptPhoneNo
#labelEditNotes
#editDeptNotes
#Editsearch
#EditsearchIcon
#editMemberBtn
#cancelEditBtn
#clearEditMemberBtn
#editMemExitBtn
EndEnumeration
Procedure ChangePanelTab()
If GetGadgetState(EventGadget()) = 1
SetGadgetText(#editFirstName, GetGadgetText(#getFirstName))
SetGadgetText(#editLastName, GetGadgetText(#getLastName))
EndIf
EndProcedure
Procedure Open_Window_0(x = 0, y = 0, width = 1040, height = 656)
OpenWindow(#Window_0, x, y, width, height, "", #PB_Window_SystemMenu)
PanelGadget(#mainPanel, 0, 25, 1040, 630)
AddGadgetItem(#mainPanel, -1, "Get Member")
ContainerGadget(#containerGet, 0, 0, 1020, 590, #PB_Container_Single)
TextGadget(#labelGetFirstName, 20, 60, 75, 20, "First Name : ")
TextGadget(#labelGetLastName, 20, 90, 75, 20, "Last Name : ")
TextGadget(#labelGetAddress, 20, 120, 75, 20, "Address : ")
TextGadget(#labelGetAptNo, 20, 150, 75, 20, "Apt No. : ")
TextGadget(#labelGetCity, 20, 180, 75, 20, "City :")
TextGadget(#labelGetProvince, 20, 210, 75, 20, "Province :")
TextGadget(#labelGetPostalCode, 20, 240, 75, 20, "Postal Code :")
TextGadget(#labelGetPhoneNo, 20, 270, 75, 20, "Phone No :")
TextGadget(#labelGetGender, 20, 300, 75, 20, "Gender :")
TextGadget(#labelGetEmployeeNo, 20, 330, 75, 20, "Employee No. :")
TextGadget(#labelGetSeniorityDate, 20, 360, 75, 20, "Seniority Date. :")
TextGadget(#labelGetDeptNo, 450, 60, 75, 20, "Dept. No. : ")
TextGadget(#labelGetDeptAddress, 450, 90, 75, 20, "Address : ")
TextGadget(#labelGetDeptCity, 450, 120, 75, 20, "City : ")
TextGadget(#labelGetDeptProvince, 450, 150, 75, 20, "Province : ")
TextGadget(#labelGetDeptPostalCode, 450, 180, 80, 20, "Postal Code : ")
TextGadget(#labelGetDeptPhoneNo, 450, 210, 75, 20, "Phone No. : ")
StringGadget(#getFirstName, 100, 60, 90, 20, "")
StringGadget(#getLastName, 100, 90, 110, 20, "")
StringGadget(#getAddress, 100, 120, 160, 20, "")
StringGadget(#getAptNo, 100, 150, 60, 20, "")
StringGadget(#getCity, 100, 180, 160, 20, "")
StringGadget(#getProvince, 100, 210, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#getPostalCode, 100, 240, 75, 20, "")
StringGadget(#getPhoneNo, 100, 270, 90, 20, "")
TextGadget(#labelGetPhoneFormat, 200, 275, 115, 20, "(# # #) # # # - # # # #")
StringGadget(#getGender, 100, 300, 20, 20, "")
StringGadget(#getEmployeeNo, 100, 330, 90, 20, "")
StringGadget(#getSeniorityDate, 100, 360, 110, 20, "")
TextGadget(#labelGetSeniorityFormat, 220, 365, 85, 20, "( MM/DD/YYYY )")
StringGadget(#getDeptNo, 525, 60, 60, 20, "")
StringGadget(#getDeptAddress, 525, 90, 160, 20, "")
StringGadget(#getDeptCity, 525, 120, 160, 20, "")
StringGadget(#getDeptProvince, 525, 150, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#getDeptPostalCode, 525, 180, 75, 20, "")
StringGadget(#getDeptPhoneNo, 525, 210, 90, 20, "")
CheckBoxGadget(#getHasGrievance, 700, 210, 130, 20, "Has Active Grievance")
TextGadget(#labelGetNotes, 450, 240, 60, 20, "Notes")
EditorGadget(#getDeptNotes, 450, 260, 550, 250, #PB_Editor_WordWrap)
StringGadget(#Getsearch, 820, 60, 150, 20, "")
ButtonImageGadget(#GetsearchIcon, 980, 60, 20, 20, 0)
ButtonGadget(#GethasGrievanceBtn, 845, 210, 90, 20, "View Grievances")
ButtonGadget(#getMemberBtn, 60, 550, 90, 20, "Get Member")
ButtonGadget(#cancelGetBtn, 200, 550, 90, 20, "Cancel")
ButtonGadget(#clearGetMemberBtn, 350, 550, 90, 20, "Clear")
ButtonGadget(#getMemExitBtn, 870, 550, 90, 20, "Exit")
CloseGadgetList()
AddGadgetItem(#mainPanel, -1, "Edit Member")
ContainerGadget(#containerEdit, 8, 8, 1020, 590, #PB_Container_Single)
TextGadget(#labelEditFirstName, 20, 60, 75, 20, "First Name : ")
TextGadget(#labelEditLastName, 20, 90, 75, 20, "Last Name : ")
TextGadget(#labelEditAddress, 20, 120, 75, 20, "Address : ")
TextGadget(#labelEditAptNo, 20, 150, 75, 20, "Apt No. : ")
TextGadget(#labelEditCity, 20, 180, 75, 20, "City :")
TextGadget(#labelEditProvince, 20, 210, 75, 20, "Province :")
TextGadget(#labelEditPostalCode, 20, 240, 75, 20, "Postal Code :")
TextGadget(#labelEditPhoneNo, 20, 270, 75, 20, "Phone No :")
TextGadget(#labelEditGender, 20, 300, 75, 20, "Gender :")
TextGadget(#labelEditEmployeeNo, 20, 330, 75, 20, "Employee No. :")
TextGadget(#labelEditSeniorityDate, 20, 360, 75, 20, "Seniority Date. :")
TextGadget(#labelEditDeptNo, 450, 60, 75, 20, "Dept. No. : ")
TextGadget(#labelEditDeptAddress, 450, 90, 75, 20, "Address : ")
TextGadget(#labelEditDeptCity, 450, 120, 75, 20, "City : ")
TextGadget(#labelEditDeptProvince, 450, 150, 75, 20, "Province : ")
TextGadget(#labelEditDeptPostalCode, 450, 180, 80, 20, "Postal Code : ")
TextGadget(#labelEditDeptPhoneNo, 450, 210, 75, 20, "Phone No. : ")
StringGadget(#editFirstName, 100, 60, 90, 20, "")
StringGadget(#editLastName, 100, 90, 110, 20, "")
StringGadget(#editAddress, 100, 120, 160, 20, "")
StringGadget(#editAptNo, 100, 150, 60, 20, "")
StringGadget(#editCity, 100, 180, 160, 20, "")
StringGadget(#editProvince, 100, 210, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#editPostalCode, 100, 240, 75, 20, "")
StringGadget(#editPhoneNo, 100, 270, 90, 20, "")
TextGadget(#labelEditPhoneFormat, 200, 275, 115, 20, "(# # #) # # # - # # # #")
StringGadget(#editGender, 100, 300, 20, 20, "")
StringGadget(#editEmployeeNo, 100, 330, 90, 20, "")
StringGadget(#editSeniorityDate, 100, 360, 110, 20, "")
TextGadget(#labelEditSeniorityFormat, 220, 365, 85, 20, "( MM/DD/YYYY )")
StringGadget(#editDeptNo, 525, 60, 60, 20, "")
StringGadget(#editDeptAddress, 525, 90, 160, 20, "")
StringGadget(#editDeptCity, 525, 120, 160, 20, "")
StringGadget(#editDeptProvince, 525, 150, 90, 20, "Ontario", #PB_String_ReadOnly)
StringGadget(#editDeptPostalCode, 525, 180, 75, 20, "")
StringGadget(#editDeptPhoneNo, 525, 210, 90, 20, "")
TextGadget(#labelEditNotes, 450, 240, 60, 20, "Notes")
EditorGadget(#editDeptNotes, 450, 260, 550, 250, #PB_Editor_WordWrap)
StringGadget(#Editsearch, 820, 60, 150, 20, "")
ButtonImageGadget(#EditsearchIcon, 980, 60, 20, 20, 0)
ButtonGadget(#editMemberBtn, 60, 550, 90, 20, "Edit Member")
ButtonGadget(#cancelEditBtn, 200, 550, 90, 20, "Cancel")
ButtonGadget(#clearEditMemberBtn, 350, 550, 90, 20, "Clear")
ButtonGadget(#editMemExitBtn, 870, 550, 90, 20, "Exit")
CloseGadgetList()
CloseGadgetList()
BindGadgetEvent(#mainPanel, @ChangePanelTab(), #PB_EventType_Change)
EndProcedure
Open_Window_0()
Repeat
iEvent = WaitWindowEvent()
Select iEvent
Case #PB_Event_CloseWindow
End
Case #PB_Event_Gadget
Select EventGadget()
Case #getMemberBtn, #cancelGetBtn, #clearGetMemberBtn, #getMemExitBtn, #editMemberBtn, #cancelEditBtn, #clearEditMemberBtn, #editMemExitBtn
MessageRequester("Information", "Button ID " + EventGadget() +#CRLF$+#CRLF$+ "Text : " + GetGadgetText(EventGadget()))
EndSelect
EndSelect
ForEver
Re: Can I pass a variable from one tab to another in a panel?
Thank you very much Chris. I'll give that a go.
Cheers!
Cheers!
http://www.oldtimeradiotoday.com - Listen to or download classic old time radio broadcasts.