user3646932
user3646932

Reputation: 496

Access Form layout and design: Header: How do I make my header section look like Google

I would like to rip off Google's design for my Continuous Form. The detail section of the form is set up to display N number of records resulting from a search, and thus cannot be used to create this effect (i think). Everything must go in the header section.

Google header image

there are 2 primary issues I would like to address in this question:

  1. Two toned background. The header section should have a grey stripe and a white stripe. This stripe needs to extend the full width of the form, which is variable and will depend on the user. (i'm using tabs not pop-ups)
  2. How to right justify certain elements of the header so that they stay close to the right edge, wherever that may fall, just like your account information on Google.

The "Search Results" in the detail section are loaded by setting the form's recordSource to the results of a query defined in VBA, which takes parameters from the search box. The form is continuous.

Any ideas how to hack this into place?

Upvotes: 1

Views: 2330

Answers (2)

HansUp
HansUp

Reputation: 97131

Recent versions of MS Access provide improved form layout features when using the ACCDB database file format.

The screen captures below are based on a form in Access 2010. The second image is after the form width was expanded, but it's scaled down for display on this web page. However you can open those images directly to compare their relative widths.

The grey color is from the form header's Back Color property. The white box is a simple text box whose Back Color is white and Back Style is Normal (not Transparent).

The text box's Horizontal Anchor property is Both, and its Can Grow property is Yes. The other 3 items ("?", "Button 2", and "Button 3") are command buttons. Their Horizontal Anchors are set to Right and their Can Grow properties are No.

enter image description here

enter image description here

The result of those properties is that when the form expands, those command buttons maintain their size are are kept right-aligned within the form. And the text box stretches to fill the remaining available space.

Note this behavior is accomplished without any VBA code.

I think these layout capabilities were introduced in Access 2007 and perhaps refined in 2010.

Upvotes: 2

Mike
Mike

Reputation: 620

For the background, use two rectangles with transparent borders, one back color gray, one white. You can size them to the form by using the form's InsideWidth property. For example:

Private Sub Form_Resize()
    rect1.Width = Me.InsideWidth
    rect2.Width = Me.InsideWidth
End Sub

I would do a similar thing for the buttons/images/etc you want right justified. Set their Left property relative to the form's width:

mySettingsButton.Left = Me.InsideWidth - 300

Keep in mind all the measurements are twips (1440 twips/inch)

Upvotes: 1

Related Questions