A.D.TEJPAL
adtp at airtelbroadband.in
Thu Jan 4 13:10:28 CST 2007
Rocky, You can try creating the recordset (rstControls) itself based upon SQL statement with Where clause matching the desired language. This filtered recordset should give faster results as it will have comparatively very few records. Best wishes, A.D.Tejpal --------------- ----- Original Message ----- From: Beach Access Software To: 'Access Developers discussion and problem solving' Sent: Thursday, January 04, 2007 21:20 Subject: [AccessD] A Question of Timing Dear List: In my manufacturing app I translate forms to various languages on the fly - when the form opens. The core of the translation routine looks at each control in a form and if it's a label or command button looks up the language record in a table (front end) and replaces the caption with the appropriate language. The core of the routine is: rstControls.FindFirst "fldLanguageForm = '" & argForm & "' and fldLanguageControl = '" _ & ctl.Name & "'" If rstControls.NoMatch = False Then I have noticed, especially in the Chinese translation some noticeable delay and you can see the form repaint itself the first time it opens (the second time it seems to go much faster). So I'm wondering if I put all the translations into an array when the app starts up and search the array instead of using FindFirst on a DAO recordset if it will be significantly faster and maybe eliminate the flicker that occurs during translation. The translation is called from the Open event of the form, BTW. Another approach I have considered which would be a considerable re-write, would be to open all the forms hidden and, instead of opening them when needed, simply make them visible. There are about 85 forms and I don't know if having that many forms opne at one time will cause other problems. Any opinions appreciated. MTIA Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com