Log In    |    Knowledge Base    |    4D Home
Tech Tip: Not all splitters are created equal
Published On: September 24, 1999

The problem most people seem to have with splitters is that they don't seem to understand that splitters are objects. Not lines.

Try this experiment:

Drop a splitter on an output form. Then look at the object properties dialog for the splitter. If you look closely you will notice that the splitter is 5 pixels wide. Now do the same thing in an Input form or Dialog form. Then look at the object properties dialog for the splitter. You will notice that the splitter is 4 pixels wide.

If you look at the splitter on the form you will swear that the splitter is only 1 pixel wide. This extra splitter size in imparative to know about. For a splitter to work properly it needs its own space. By that I mean you can't put another item on top of it. This includes the areas to the left and right of the splitter line. Use the objet properties dialog to see exactly where the splitter begins and ends. Then don't put anything overlapping the splitter. For example if the left of the splitter is 223 and the right is at 227 then the object on the left must end by 222 and the object on the right may not start until 228. The area between the line (probably at pixel 224 in the above senario) and the edge of the splitter (227) is not a shelf on which to set something.

It's hard to get used to always having to used the dialog for exact positioning but it pays off when your splitters work as they should.

Problems: I have had trouble when I tried pasting splitters from Input forms or Dialogs to Output forms. Sometimes they didn't work. On the other hand I have never had a problem from a splitter that I placed on the form using the Tools palette.

Note: I have tried resizing the splitter to one pixel wide using the object properties dialog.I did this in hopes that I could move things closer together and remove the unsightly gaps between objects. All I can say is sometimes they work. Sometimes they don't. If I ever figure out a pattern. I'll post it here.