Dan Waters
dwaters at usinternet.com
Thu Jun 19 16:44:58 CDT 2008
Rocky, Access has a built in progress bar that I use frequently. The bar shows up as a green line in the left side of the status bar, which is at the bottom of the screen. It's simple and reliable and your customers have seen it or something like it before so no explanation will be needed. Step 1: Dim stgTitle as string Dim varReturn as variant Dim intCount as integer stgTitle = "Progress Bar Title" '-- Somehow get the count of total iterations intCount = rst.recordcount (for example) Step 2: '-- Initiate the progress bar - no green bars will be displayed yet varReturn = SysCmd(acSysCmdInitMeter, stgTitle, intCount) Step 3: intCount = 0 Do While X < Y '-- Calculations here intCount = intCount + 1 '-- Add proportional length to the progress bar varReturn = SysCmd(acSysUpdateMeter, intCount) Loop Step 4: '-- Remove the Progress Bar varReturn = SysCmd(acSysCmdClearStatus) Hope this works! Dan -----Original Message----- From: accessd-bounces at databaseadvisors.com [mailto:accessd-bounces at databaseadvisors.com] On Behalf Of Rocky Smolin at Beach Access Software Sent: Thursday, June 19, 2008 11:24 AM To: 'Access Developers discussion and problem solving' Subject: [AccessD] Timer Event Dear List: The client would like a progress box to display during a lengthy calculation - can take up to a minute and I told him that some kind of indication should appear on the form so the user knows something is happening. I implemented one solution which is OK. I have a sub which adds a period to a text box on the calling form. And so I can lace calls to that routine throughout the calculations. Problem is that it doesn't produce these periods in equal time intervals. So what he really wants now is a progress indicator that would change every 1/4 second or so, and when it got to its maximum length would start over again. Not a difficult thing to do. I thought I could use the timer event on the form that calls the calculation, but the calculation is in a Public module and so, while it is running, the timer event doesn't trigger. Is there a way around this or another approach? MTIA Rocky Smolin Beach Access Software 858-259-4334 www.e-z-mrp.com <http://www.e-z-mrp.com/> www.bchacc.com <http://www.bchacc.com/> -- AccessD mailing list AccessD at databaseadvisors.com http://databaseadvisors.com/mailman/listinfo/accessd Website: http://www.databaseadvisors.com