Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Refresh not refreshing
Message
 
General information
Forum:
Visual FoxPro
Category:
Forms & Form designer
Miscellaneous
Thread ID:
00510014
Message ID:
00510361
Views:
24
>>ok I can't repreduse the error when I take the navigation buttons out of the form following is the add button code, the refresh code and the navigation code
>>
>>and yes I know this is gonna look like kiddie code, but it works
>>if you want more code to try and help me just say
>>
>>**********************************
>>add button, click event
>>
>>THISFORM.ADDMODE = .T.
>>THISFORM.ID_ARRAY (create a array of unique usernames, to prevent duplicates)
>>WITH THISFORM
>>	.ADDMODE = .T.
>>	.editmode = .T.
>>	.setcaption() (set "save" and "cancel" command buttons)
>>	.setenable() (set the enabled and disabled state for objects)
>>>   APPEND BLANK
>>   .REFRESH
>
>>REPLACE START.administrator WITH .F. , ;
>>        START.Purchase_gen WITH .F., ;
>         START.Purchase_rec WITH .F., ;
>>        START.Purchase_mod WITH .F., ;
>>        START.Receipt_mod WITH .F., ;
>>        START.Vendor WITH .F., ;
>>        START.administrator WITH .F., ;
>>        START.Invoice_gen WITH .F., ;
>>        START.Invoice_mod WITH .F.
>>        START.Inventory_add WITH .F., ;
>>        START.Inventory_del WITH .F., ;
>>        START.Inventory_pic WITH .F., ;
>>        START.Adjustments WITH .F., ;
>>        START.Back_comp WITH .F., ;
>>        START.Back_mod WITH .F., ;
>>        START.Return_modi WITH .F., ;
>>        START.Customer WITH .F.
>>.cmb_Group.VALUE = la_group[1,1]
>>lc_enctypt = ''
>>.txtf_name.SETFOCUS() (no code)
>>.REFRESH()
>>*_SCREEN.WINDOWSTATE = 1 (this will make the form look fine)
>>*_SCREEN.WINDOWSTATE = 0 (this will make the form look fine)
>>ENDWITH
>
>>**********************************
>>thisform.refresh code
>>with thisform
>>.LOCKSCREEN = .T.
>>IF .addmode <> .T.
>>	lc_enctypt = loTools.decrypt(START.user_id)
>>ENDIF
>>IF .editmode = .F. AND .addmode = .F.
>       with .navclass1
>>	.cmdtop.ENABLED =.T.
>>	.cmdnext.ENABLED =.T.
>>	.cmdprior.ENABLED =.T.
>>	.cmdbottom.ENABLED =.T.
>>	.ENABLED = .T.
>>	.ENABLED = .T.
>>	.ENABLED = .T.
>>	.cmdsearch.ENABLED = .T.
>>	.cmdadd.ENABLED = .T.
>>	.cmd_pic.ENABLED = .T.
>>       endwith
>>	IF DELETE()
>>		.lbl_delete.CAPTION = 'User deleted'
>>		.CMDDELETEREVERT.CAPTION = 'Recall'
>>		.CMDDELETEREVERT.TOOLTIPTEXT = 'Recall user.'
>>		.CMDEDITSAVE.ENABLED = .F.
>>	ELSE
>>		.lbl_delete.CAPTION = 'Active user'
>>		.CMDDELETEREVERT.CAPTION = 'Delete'
>>		.CMDDELETEREVERT.TOOLTIPTEXT = 'Delete user.'
>>		.CMDEDITSAVE.ENABLED = .T.
>>	ENDIF
>>
>>	IF START.Purchase_gen = .T.
>>		.chkPurchase_gen.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkPurchase_gen.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Purchase_rec = .T.
>>		.chkPurchase_rec.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkPurchase_rec.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Purchase_mod = .T.
>>		.chkPurchase_mod.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkPurchase_mod.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Receipt_mod = .T.
>>		.chkReceipt_mod.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkReceipt_mod.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Vendor = .T.
>>		.chkVendor.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkVendor.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Vendorad = .T.
>>		.chk_Venad.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chk_Venad.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Administrator = .T.
>>		.chkAdministrator.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkAdministrator.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Invoice_gen = .T.
>>		.chkInvoice_gen.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkInvoice_gen.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Invoice_mod = .T.
>>		.chkInvoice_mod.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkInvoice_mod.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Inventory_add = .T.
>>		.chkInventory_add.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkInventory_add.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>    .... and so on
>>	IF START.Inventory_del = .T.
>>		.chkInventory_del.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkInventory_del.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Inventory_pic = .T.
>>		.chkInventory_pic.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkInventory_pic.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Adjustments = .T.
>>		.chkAdjustments.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkAdjustments.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Back_comp = .T.
>>		.chkBack_comp.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkBack_comp.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Back_mod = .T.
>>		.chkBack_mod.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkBack_mod.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Return_modi = .T.
>>		.chkReturn_modi.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkReturn_modi.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>	IF START.Customer = .T.
>>		.chkCustomer.DISABLEDFORECOLOR = RGB(128,0,0)
>>	ELSE
>>		.chkCustomer.DISABLEDFORECOLOR = RGB(128,128,128)
>>	ENDIF
>>
>>ELSE
>>		.cmdreset.ENABLED = .F.
>>		.navclass1.cmdtop.ENABLED =.F.
>>		.navclass1.cmdnext.ENABLED =.F.
>>		.navclass1.cmdprior.ENABLED =.F.
>>		.navclass1.cmdbottom.ENABLED =.F.
>>		.navclass1.ENABLED = .F.
>>		.cmd_exit.ENABLED = .F.
>>		.cmdsearch.ENABLED = .F.
>>		.cmdadd.ENABLED = .F.
>>		.cmd_pic.ENABLED = .F.
>>	IF START.Purchase_gen = .T.
>>		.chkPurchase_gen.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		.chkPurchase_gen.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Purchase_rec = .T.
>>		.chkPurchase_rec.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		.chkPurchase_rec.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Purchase_mod = .T.
>>		.chkPurchase_mod.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		.chkPurchase_mod.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Receipt_mod = .T.
>>		.chkReceipt_mod.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		.chkReceipt_mod.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Vendor = .T.
>>		.chkVendor.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		.chkVendor.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Vendorad = .T.
>>		.chk_Venad.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		.chk_Venad.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Administrator = .T.
>>		THISFORM.chkAdministrator.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkAdministrator.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Invoice_gen = .T.
>>		THISFORM.chkInvoice_gen.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkInvoice_gen.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Invoice_mod = .T.
>>		THISFORM.chkInvoice_mod.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkInvoice_mod.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Inventory_add = .T.
>>		THISFORM.chkInventory_add.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkInventory_add.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Inventory_del = .T.
>>		THISFORM.chkInventory_del.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkInventory_del.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Inventory_pic = .T.
>>		THISFORM.chkInventory_pic.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkInventory_pic.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Adjustments = .T.
>>		THISFORM.chkAdjustments.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkAdjustments.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Back_comp = .T.
>>		THISFORM.chkBack_comp.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkBack_comp.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Back_mod = .T.
>>		THISFORM.chkBack_mod.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkBack_mod.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Return_modi = .T.
>>		THISFORM.chkReturn_modi.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkReturn_modi.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>
>>	IF START.Customer = .T.
>>		THISFORM.chkCustomer.FORECOLOR = RGB(255,0,0)
>>	ELSE
>>		THISFORM.chkCustomer.FORECOLOR = RGB(0,0,0)
>>	ENDIF
>>ENDIF
>>

>>	.cmd_invoice.ENABLED = .editmode
>>	.cmd_inventory.ENABLED = .editmode
>>	.cmd_purchase.ENABLED = .editmode
>>	.cmd_back_order.ENABLED = .editmode
>>	.chkLogged_in.ENABLED = .F.
>>IF START.logged_in = .T.
>>	.chkLogged_in.CAPTION = 'Logged in'
>>ELSE
>>	.chkLogged_in.CAPTION = 'Logged out'
>>ENDIF
>>_SCREEN.MOUSEPOINTER=0
>> .LOCKSCREEN = .F. && Don't use _screen here
>endwith
>
>
>>**********************************
>>nav button code from container class
>>
>>?? CHR(7)  && ring the bell
>>WITH THISFORM
>>	.NAVCLASS1.CMDTOP.ENABLED = .T.
>>	.NAVCLASS1.CMDPRIOR.ENABLED = .t.
>>
>>IF NOT EOF()
>>	SKIP
>>ENDIF
>>		
>>IF EOF()
>>	GO BOTTOM
>>	WAIT "Bottom of the table" window nowait
>>		.NAVCLASS1.cmdbottom.enabled = .f.
>>		.NAVCLASS1.cmdnext.enabled = .f.
>>	>else
>>		.NAVCLASS1.cmdbottom.enabled = .t.
>>		.NAVCLASS1.cmdnext.enabled = .t.
>>	
>>ENDIF		
>.Refresh
>endwith	
>>
>
>Hi Stephen,
>
>I made couple of modifications to increase readability. First of all, use PRE tags to show code properly in UT.
>
>Secondly, you can use with endwith construction once at the top through bottom, no need to do it multiple times...
>
>Finally, you better to overhead the Refresh with all this code. See, if it could be a custom form method, which you can call instead of Refresh. Check Documents section here "Do and don'ts, you'll see this as one of John Koziol's advice: not put lots of code in form refresh).
>
>HTH
If it's not broken, fix it until it is.


My Blog
Previous
Reply
Map
View

Click here to load this message in the networking platform