Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Intermittent control source not storing
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Problèmes
Versions des environnements
Visual FoxPro:
VFP 9
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Visual FoxPro
Divers
Thread ID:
01026692
Message ID:
01026800
Vues:
23
Hi Tracy,

Should the code you've posted below reproduce the problem? I am unable to reproduce the behavior you are seeing when I execute it... I've run it over 20 times and still the value is always shown when I click close.


>The code below demonstrates the general layout. A form with a pageframe and 6 pages. The only difference is in our app the save and close button are on an activex object toolbar (dbiTech toolbar). This occurs intermittently, but the user always follows the same steps when it happens and when it doesn't.
>
>The user will launch the form, key something into text1 on page1 and then not press enter or tab but while the cursor is still residing in the textbox on page1 click on page2 with the mouse. There are other controls on page1 but they are filled by default and the user does not have to tab through them unless they need to change the values. After the user enters the value into the textbox on page1, as mentioned, the user does not leave the control but clicks on the tab for the next page. Then the user continues on completing all fields on all pages and finally clicks on a save button on the toolbar. The value is not stored in the variable that is the controlsource for text1 on page1 for some reason. It does not happen everytime. To workaround the problem, I am storing the value to the variable in the interactivechange event which seems to work the majority of the time. The variable exists before the form is loaded and is set as the control source for the textbox on page1.
>
>Note, the form is actually called via:
>
>DO FORM appscrn NAME oappscrn LINKED
>
>but to demonstrate a similar layout for testing I created the code below.
>
>
>CLEAR
>CLOSE ALL
>set talk OFF
>set confirm ON
>set NOTIFY on
>set status bar ON
>
>llcontinue = .T.
>cvalue = ''
>cvalue1 = ''
>cvalue2 = ''
>cvalue3 = ''
>cvalue4 = ''
>cvalue5 = ''
>cvalue6 = ''
>
>oform = CREATEOBJECT('TESTFORM')
>WITH oform.pageframe1.page1
> .AddObject('text1','Textbox')
>ENDWITH
>WITH oform.pageframe1.page1.text1
>   .visible = .T.
>   .controlsource = 'cvalue'
>   .top = 20
>   .left = 125
>   .height = 23
>   .width = 100
>ENDWITH
>WITH oform.pageframe1.page2
> .AddObject('text2','Textbox')
>ENDWITH
>WITH oform.pageframe1.page2.text2
>   .visible = .T.
>   .controlsource = 'cvalue2'
>   .top = 20
>   .left = 125
>   .height = 23
>   .width = 100
>ENDWITH
>WITH oform.pageframe1.page3
> .AddObject('text3','Textbox')
>ENDWITH
>WITH oform.pageframe1.page3.text3
>   .visible = .T.
>   .controlsource = 'cvalue3'
>   .top = 20
>   .left = 125
>   .height = 23
>   .width = 100
>ENDWITH
>
>oform.show()
>
>DO WHILE llcontinue
>   READ EVENTS
>ENDDO
>
>oform = null
>RELEASE oform
>
>return
>
>
>DEFINE CLASS testform AS form
>
>
>   Top = 0
>   Left = 0
>   Height = 250
>   Width = 494
>   DoCreate = .T.
>   Caption = "Test Form"
>   Name = "Form1"
>
>
>   ADD OBJECT pageframe1 AS pageframe WITH ;
>      ErasePage = .T., ;
>      PageCount = 6, ;
>      Top = 12, ;
>      Left = 24, ;
>      Width = 444, ;
>      Height = 204, ;
>      Name = "Pageframe1", ;
>      Page1.Caption = "Page1", ;
>      Page1.Name = "Page1", ;
>      Page2.Caption = "Page2", ;
>      Page2.Name = "Page2", ;
>      Page3.Caption = "Page3", ;
>      Page3.Name = "Page3", ;
>      Page4.Caption = "Page4", ;
>      Page4.Name = "Page4", ;
>      Page5.Caption = "Page5", ;
>      Page5.Name = "Page5", ;
>      Page6.Caption = "Page6", ;
>      Page6.Name = "Page6"
>
>   ADD OBJECT command1 AS commandbutton WITH ;
>      Top = 219, ;
>      Left = 204, ;
>      Height = 27, ;
>      Width = 84, ;
>      Caption = "Close", ;
>      Name = "Command1"
>
>   PROCEDURE command1.Click
>      wait WINDOW "cvalue = " + cvalue && this displays the entered value in my testing but not at the user's site
>      thisform.release()
>   ENDPROC
>
>   PROCEDURE destroy
>      CLEAR EVENTS
>      llcontinue = .F.
>   ENDPROC
>
>ENDDEFINE
>
>
>Is this happening to anyone else? Any ideas? I cannot make it happen on my system but I have watched it happen on the user's system.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform