Jump to content
Server Maintenance This Week. ×

Ghost text techniques


This topic is 3271 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Anyone have a good approach for creating "ghost text" on a layout?  Example: User enters find mode and all of the field bodies have the field name in them until the user enters the field or adds text to the field.  I need to figure out a way of adding this helper text to fields (mainly in Find mode but I can see other Browse mode uses for it as well) on layouts with limited space where field labels have been omitted.

I have tried adding text over a field that has a conditional hide so that if Get ( ActiveFieldName ) reports that field the text hides.  I haven't moved on to expanding the hide logic to cover when the field has content but not in focus but that's the next step once I figure out how to just hide the text when the field is active.  It seems to work on immediate entry into Find mode and focus falls on the first field.  Ghost text tied to that first field hides.  If I focus on a new field it doesn't unhide though.  If I experiment with a ghost text tied to field other than the first default field, it will never hide when I focus on that 2nd field.  It's as if the hide evaluation happens only once when you enter find mode.

Anyone got a magic solution?

Thanks

Link to comment
Share on other sites

After a little tinkering I see that I can fire a script to refresh the window via the OnObjectEnter trigger on all fields on the layout but this seems like a pretty heavy hammer to have to use to accomplish what I'm looking for.  Still hoping for a method that doesn't involve modifying lots of fields to fire a refresh script all the time.

One caveat of this is that as long as the user is hopping between fields that will fire the refresh script at OnObjectEnter the ghost text objects will hide and unhide as needed.  But, if the user clicks in the open out of a field with ghost text, that ghost text will not unhide since a refresh window is not run.  Trying to use the OnObjectExit trigger to refresh the window to hide/unhide objects will not work since that trigger fires before the object is actually exited.

Edited by Hijack
Link to comment
Share on other sites

Well, here is old method.  I thought the new Hide feature would refresh a bit better without the 'heavy handed hammer' as you say.  

LabelInField.fmp12.zip

Notice that, since it is the only field, it will not display the label when you are in the field in Find Mode but it will display on all the fields if the cursor isn't in a field.

Edited by LaRetta
Link to comment
Share on other sites

Thanks for the input and example, LaRetta.  It was a big help.  I had considered using conditional formatting but there were a couple of issues I needed to get around:

1. The layout is a list with alternating record colors.  The fields are transparent because of this.  So, conditionally formatting the field on top would require me to come up with a calculation to figure out if the row was an odd number or even number and apply different formats accordingly.  I've done that in the past for other reasons but wanted to avoid that work here.

2. Conditionally formatting the background ghost text would be easy if the transparent text color (first color on the chart with a slash) was actually transparent.  It is not.  Using that format results in a white text outcome (at least for the theme I am using).

In the end, applying a conditional format on the ghost text of a really huge font size (in this case, 196 point) when a field is active or not empty does actually produce a usable result.  Since these are single line fields in this case, the text pushes out of view at 196 points.

Thanks as always!

Link to comment
Share on other sites

Another fun option. If you want to get away from the overhead of the conditional formatting. Thanks to @jbante for posting this one.

http://uxmovement.com/forms/why-infield-top-aligned-form-labels-are-quickest-to-scan/

I've been playing around with this idea for just over a week now. Noticing layouts built this way look less busy, but still provides all of the info a user needs to know what data in a field. Something that can be lost if the label is hidden. Google does this a lot in their interface ( hiding interface objects and menus ), to the point where it's not intuitive, and you can't find the magic spot for where the menu is hidden.

 

Screen Shot 2015-05-05 at 4.50.39 PM.png

  • Like 4
Link to comment
Share on other sites

Anyone have a good approach for creating "ghost text" on a layout?  Example: User enters find mode and all of the field bodies have the field name in them until the user enters the field or adds text to the field.  I need to figure out a way of adding this helper text to fields (mainly in Find mode but I can see other Browse mode uses for it as well) on layouts with limited space where field labels have been omitted.

Hijack,

​Check out FileMaker 14, available as of today.  The new "in-field labels" are exactly what you're describing here. 

Mark

(Oh, and thanks for the link, Josh.)

Link to comment
Share on other sites

This topic is 3271 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.