« Wacom Cintiq 24HD Announced | Main | Interlude: And We Never Got Tired »

Visio Tip: Control Shape Selection in Groups – Advanced Techniques



If you prefer, a screencast is available that covers this topic:



Visio users are are already familiar with how to to group and ungroup shapes in Visio …



And having created a group, if it is unselected, by default the first click on any shape in the group will select the entire group.


Walkthrough of Sub-selection in Groups

But if a group is selected and then you click on a shape in the group, you enter the world of “Sub-selection”. Let’s walk through this:


Nothing selected:


Click on any shape in the group and the entire group is selected.



And once the group is selected,  if you click again on the group, you’ll “sub-select” a shape inside the group. Notice in the screenshot below how the sub-selection handles look slightly different from the normal selection handles above. Also notice that the group still has a box around it firther emphasizing emphasizing that this is a sub selection.


Sub-selection is useful because it lets us modify a shape “inside” the group without breaking apart the group.


Selecting in the Sub-Selection Mode

Sub-selection is an interesting place to be.Clicking on shapes has different outcome depending on whether you clicked on a sub-selected shape or not.

Suppose the you have the circle sub-selected. If you click on the circle again, the entire group will be selected.

image   image

Now suppose you have the circle sub-selected, and then you click on the triangle. Now the triangle is sub-selected.



Sub-Selecting Multiple Shapes

You can sub-select more than one shape.

For example, start by sub-selecting the circle.


Instead of clicking on the triangle, hold down the CTRL key as you click on the triangle.


Now both the triangle and the circle are sub-selected.


Controlling the Default Selection Behavior in Groups

So, this a a very useful feature, but sometimes it is NOT what we want.

  • Sometimes we want to only select the group and not allow sub-selection
  • Sometimes we want the first click on an unselected group to sub-select a particular shape by default instead of the entire group.

The good news is that this behavior is completely controllable on a per-group basis.

In Visio 2007, select the group and then right click Format > Behavior


This will launch the Behavior dialog, under the Behavior tab, examine the value for Selection.


In Visio 2010, you’ll notice that the same context menu does NOT have a Behavior item


The way to do this in Visio 2010 is to use the Developer Tab


Once you have the Behavior dialog up, notice the three options for Selection: Group only, Group first, and Members first.



Group Selection Options

  • Group first – this is the default behavior that I have so far described in the blog post. The first click selects the entire group. The second click selects a shape inside the group (a.k.a sub-selection). This is the behavior I have described above
  • Group only – the first click selects the entire group. The second click unselects the group. In other words, with regard to selection a group will behave exactly as a single shape using this option.
  • Members first – The first click will sub-select a shape in the group.


Walkthrough of Group Only Selection

Nothing is selected:


Click on any shape and the entire group will be selected.


Click on any shape again and the group will be unselected.



Walkthrough of “Members Only” Selection

Nothing is selected:


Click on circle. The circle will be sub-selected.


Click on any shape in the group (even the circle) and the entire group is selected.


PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.
Author Email (optional):
Author URL (optional):
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>