How to provide navigation (1 Viewer)

speakers_86

Registered User.
Local time
Today, 18:33
Joined
May 17, 2007
Messages
1,919
What means do you provide to your end users to navigate around your database? I used to use the ribbon, but I want to stop since it is cumbersome and there is a registry key that disallows custom ribbons. I'm not sure how to do it and make it look good. My idea now is to have all forms be popup, and the 'main' form that gets maximized that has buttons that open the subsequent forms.
 

Uncle Gizmo

Nifty Access Guy
Staff member
Local time
Today, 23:33
Joined
Jul 9, 2003
Messages
16,360
It's very old and a lot of people don't like it. It's called the "Switchboard" and it is provided by Microsoft. The latest version is driven by embedded macros and should be avoided. The early version was driven by VBA code.

The "Switchboard" is a "data-driven form" meaning that the names of the forms you want to open along with the various commands that the switchboard performs are stored in a table.

The original interface for setting it up it is very poor and is probably why it got such a bad name.

From the point of view of developing in MS Access it's a very interesting method to learn, that is a data driven form.

I am currently developing my own interface for it, and adding extra functionality, particularly for the management of user levels.



Sent from my SM-G925F using Tapatalk
 

speakers_86

Registered User.
Local time
Today, 18:33
Joined
May 17, 2007
Messages
1,919
I am aware of the switchboard. I would sooner make one myself though. Essentially that is what I'm thinking of doing, I just like the look of custom ribbons. Slapping some buttons on a form just wont look as good as using the built in idMso images.
 

CJ_London

Super Moderator
Staff member
Local time
Today, 23:33
Joined
Feb 19, 2013
Messages
16,668
It depends on the application but I typically have one main form and everything else is displayed in unbound subforms. I usually have two 'menu' subforms. The main form can be maximised and all subforms can be resized, moved, hidden as required - either as a result of event or the user can click on corners to move or resize themselves.

The first is a simple scrollable list (continuous form) populated with form names or graphical representation - I have a form naming convention where the first 4 characters of the form name determine order and inset and is typically located to the left of the main form

The second usually runs across the top and is a horizontally scrolling list of forms/records the user has visited - it is populated from a log table which tracks user activity and the user can delete items or clear the list completely (but doesn't delete from the log table)

Sometimes there is a third one that appears either on the right or below the first one and that is a frequently refreshed list of records that have been updated or appended - administrators can toggle to just see their activity or to see everyones.

The selected form appears in the middle and depending on the size, users can display two or more forms (e.g. two customers, two accounts, whatever) side by side or above and below (users can drag and resize these subforms)

Since screens are getting bigger and/or users have multiple screens, I'm starting to hit the maximum width issue of 22 inches, so I'm just perfecting a way for users to 'swipe' and move a copy of the displayed form off the main form so they can call up another record or another form - useful for comparing records.

Generally speaking users can get from anywhere to anywhere in a maximum of 3 clicks of the mouse
 

speakers_86

Registered User.
Local time
Today, 18:33
Joined
May 17, 2007
Messages
1,919
That sounds complicated. How are you letting users resize subforms? I have a method but it is tedious for me and the end user. I'd like an easier way.
 

CJ_London

Super Moderator
Staff member
Local time
Today, 23:33
Joined
Feb 19, 2013
Messages
16,668
It has evolved over the years through a combination of customer requirements and my unwillingness to constantly reinvent the wheel and maintain many variations of basically the same code. So it is completely configureable from my part - then I only have to worry about look and feel for the client specific stuff. Security is also built in and configured with a few clicks.

with regards resizing subforms there are two ways - the simpler one simply has a line bar on the main form - the user can click on it and move horizontally or vertically depending on direction - the mousemove code resized the subforms above and below or to left and right

A more complex one is in the subform section mousedown event which compares the XY locations to determine if 'near' an edge - if it is then it allows the host subform control to be resized on the mousemove event, allowing it to be resized from that edge - and if near a corner in the other dimension as well. Works much the same way as resizing a window. Other subforms around get resized to make room - I don't allow a subform to overlap another.

I've recently provided example code here for moving a control up and down - easily adapted for left/right, resizing etc based on where the users clicks on a control

http://www.access-programmers.co.uk/forums/showthread.php?p=1483644#post1483644
 

Users who are viewing this thread

Top Bottom