Can I pass a variable from one tab to another in a panel?
Posted: Sun Jun 13, 2021 1:11 am
Is it possible to pass a variable from one tab to another tab in a PanelGadget?
http://www.purebasic.com
https://www.purebasic.fr/english/
Code: Select all
lname = GetGadgetText(#lastname)
Code: Select all
SetGadgetText(#lastname, lname)
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:Columbo wrote: Sun Jun 13, 2021 2:52 amI 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.
Code: Select all
SetGadgetText(targetgad,GetGadgetText(sourcegad))
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()
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