Microsoft

Add a popup window to a PowerPoint slide

Animate callouts on a PowerPoint slide to display optional information with just a quick click.

Sometimes you want to display additional information that's not a permanent element on a slide -- similar to a popup window. In other words, the information is hidden until you want to display it. For instance, you might want to display quarterly bonuses to build excitement. Or you might want to share a contact phone number or e-mail address if asked. There's no built-in feature that does this, but you can still get PowerPoint to display a pseudo popup window by adding a trigger that displays a callout.

A trigger is an object that executes an action or animation when clicked. This technique requires a graphic for you to click. If you're lucky, your slide will have an appropriate graphic to use as a trigger. If not, you can create one by inserting and then hiding an AutoShape. For the popup window, you can use a callout AutoShape. By using a trigger and a little animation, you can get PowerPoint to display the callout with a quick click.

There are several ways to arrange these items:

  • You can use two separate objects: a trigger and a callout.
  • You can use the same object for both purposes by adding a trigger to the callout.
  • You can use an existing graphic in the slide to trigger the callout.

The following example uses both a trigger and a callout, as follows:

  1. In Normal view, with the slide current, choose Basic Shapes from the AutoShapes control on the Drawing toolbar.
  2. Select and insert a shape. How big the shape is depends on how much coverage you want. The advantage to using an additional object as the trigger is that you control the trigger area. Callouts can be small and might be difficult to hit during a busy presentation.

october2008officeblog4fig1r.jpg

  1. Next, add the callout AutoShape by choosing Callouts from the AutoShapes control, selecting and inserting a specific callout shape, and then entering the appropriate text.

october2008officeblog4fig2r.jpg

To animate the callout, do the following:

  1. Right-click the callout AutoShape and choose Custom Animation.
  2. In the resulting Custom Animation pane, choose Entrance from the Add Effects control,and then select More Effects.
  3. From the resulting list of effects, click Faded Zoom (at the bottom) and click OK. PowerPoint will add the animated callout to the effects list.
  4. To set the trigger, choose Timing from the effect's drop-down list.

october2008officeblog4fig3r.jpg

  1. In the Faded Zoom dialog box, click Triggers.
  2. Click the Start Effect On Click Of option and then select the object that when clicked will display the callout. In this case, that's the rectangular AutoShape you added in the first set of instructions. (When applying this to your own slides, give the trigger graphics meaningful names; matching the callout to the triggering object will be much easier that way.)

october2008officeblog4fig4r.jpg

  1. Click OK to close the dialog box.

To complete the effect, hide the trigger graphic (if you include one) as follows:

  1. Right-click the trigger graphic (the rectangular AutoShape) and choose Format AutoShape.
  2. Choose 100% from the Transparency control in the Fill section.
  3. Then, choose No Line from the Color drop-down list in the Line section.

october2008officeblog4fig5r.jpg

  1. Click OK and save the presentation.

To preview the slide, press [F5]. Click the trigger object to display the callout.

october2008officeblog4fig6r.jpg

Clicking the hidden trigger object again will redisplay the callout rather than jumping to the next slide. To continue the slide show, click anywhere in the slide other than on the trigger object. Experiment with the shapes and timing once you're comfortable with the technique to get the most efficient and effective results. You might want to add an exit animation as well. That way you can hide the callout if you want to continue to view the slide without the callout.

Remember, you might not need a trigger graphic. You might use an existing graphic or even the callout itself.

About

Susan Sales Harkins is an IT consultant, specializing in desktop solutions. Previously, she was editor in chief for The Cobb Group, the world's largest publisher of technical journals.

12 comments
p4psk
p4psk

Sub Attributes_Display() Dim FontSize As String Dim Alignment As String Dim LeftPosition As String Dim TopPosition As String Dim SpaceBefore As String Dim SpaceAfter As String Dim LineSpacing As String Dim IndentationBeforeText As String Dim SpecialIndentationType As String Dim SpecialIndentationBy As String 'THIS SETS THE MACRO TO RUN ONLY WHEN ONE OBJECT IS SELECTED 'MsgBox ActiveWindow.Selection.Type If ActiveWindow.Selection.Type = ppSelectionShapes Or ActiveWindow.Selection.Type = ppSelectionText Then If ActiveWindow.Selection.ShapeRange.Count = 1 Then 'THIS IS THE CODE THAT RUNS WHEN ONLY ONE OBJECT or TEXT IS SELECTED 'ALIGNMENT If ActiveWindow.Selection.TextRange.ParagraphFormat.Alignment = 1 Then Alignment = "Left" ElseIf ActiveWindow.Selection.TextRange.ParagraphFormat.Alignment = 2 Then Alignment = "Centre" ElseIf ActiveWindow.Selection.TextRange.ParagraphFormat.Alignment = 3 Then Alignment = "Right" Else Alignment = ActiveWindow.Selection.TextRange.ParagraphFormat.Alignment End If FontSize = Round(ActiveWindow.Selection.TextRange.Font.Size, 2) LeftPosition = Round(ActiveWindow.Selection.ShapeRange.Left / 72, 2) & " in" TopPosition = Round(ActiveWindow.Selection.ShapeRange.Top / 72, 2) & " in" SpaceBefore = ActiveWindow.Selection.TextRange.ParagraphFormat.SpaceBefore & " pt" SpaceAfter = ActiveWindow.Selection.TextRange.ParagraphFormat.SpaceAfter & " pt" LineSpacing = ActiveWindow.Selection.TextRange.ParagraphFormat.SpaceWithin IndentationBeforeText = Round(ActiveWindow.Selection.ShapeRange.TextFrame.Ruler.Levels(1).LeftMargin / 72, 2) Dim Response As String Response = MsgBox( _ "Font Size:" & FontSize _ & vbNewLine _ & "Alignment:" & Alignment _ & vbNewLine _ & vbNewLine _ & "POSITION" & vbNewLine _ & "Left : " & LeftPosition _ & vbNewLine _ & "Top : " & TopPosition _ & vbNewLine _ & vbNewLine _ & "SPACING" & vbNewLine _ & "Before : " & SpaceBefore _ & vbNewLine _ & "After : " & SpaceAfter _ & vbNewLine _ & "LineSpace : " & LineSpacing _ & vbNewLine _ & vbNewLine _ & "INDENTS" _ & vbNewLine _ & "Before Text : " & IndentationBeforeText & vbNewLine _ & vbNewLine _ & "Do you wish to change the values?", vbYesNo) If Response = vbYes Then ' User chose Yes. GoTo Attributes_Input Else ' User chose No. GoTo Attributes_Exit End If ElseIf ActiveWindow.Selection.ShapeRange.Count > 1 Then MsgBox "More than one object selected" Else MsgBox "No object Selected" End If Else MsgBox "No Object Selected" End If 'SET THE ATTRIBUTES IF NEEDED Attributes_Input: Dim lNum As Long On Error Resume Next Application.DisplayAlerts = False lNum = InputBox(Prompt:="Please enter you Code. 1: First Level; 2: Second Level; 3: Third Level ", Title:="Enter the paragraph level code", Default:="0") On Error GoTo 0 Application.DisplayAlerts = True If lNum = 0 Then MsgBox "No Changes Made", , "RESULT" ElseIf lNum = 1 Then ActiveWindow.Selection.TextRange.Font.Size = 18 ActiveWindow.Selection.TextRange.ParagraphFormat.Alignment = 1 ActiveWindow.Selection.TextRange.ParagraphFormat.SpaceBefore = 9 ActiveWindow.Selection.TextRange.ParagraphFormat.SpaceAfter = 0 ActiveWindow.Selection.TextRange.ParagraphFormat.SpaceWithin = 1 ActiveWindow.Selection.ShapeRange.TextFrame.Ruler.Levels(1).LeftMargin = 21.6 MsgBox "Change Successfull", , "RESULT" ElseIf lNum = 2 Then MsgBox "this is 2" ElseIf lNum = 3 Then MsgBox "this is 3" Else MsgBox "No Changes Made", , "RESULT" GoTo Attributes_Exit End If Attributes_Exit: End Sub

davidf
davidf

Well written and useful.

JamesCS
JamesCS

Any way to configure so the popup will not print so I can have clean slides to handout?

svineyard
svineyard

I really, really need to be able to do this with a mouseover, but the only way I've found to be able to do this is to use a Flash object in PP. Anyone have any better ideas? Thanks!!

Oz_Media
Oz_Media

I use them in a similar fashion but for slide shows that I send clients. Ex. I'll have a black and white diagram of their room, with electronics placement marked, hovering over the areas changes to a hand, clicking the hand opens a popup with more details , cloe up graphics, specs and manufacturer weblinks as needed. It works well, but I have been doing that since using Win95, I thought it was a basic PP presentation.

jwlindsey
jwlindsey

I have used this method when viewing a slide and then allow questions from the group. If they ask a question for which I have anticipated an answer associated with one of my triggers, I have a ready answer. If there is no trigger associated with the question, then I just answer the question as required. Very effective.

mhudnall
mhudnall

Rather than a pop-up, I used hyperlinks to external documents. This works even with a graphic. I select the graphic and use the Ctrl+K key combination to bring up a hyperlink dialog and then link to the Word, Excel, Visio, or whatever file. Of course, for this to work, the hyperlink needs to be able to access the file linked to.

ArchGov
ArchGov

I also needed the mouseover popup capability but haven't found a clean and easy method of doing it. However, I did utilize a somewhat cumbersome but effective method to "simulate" the popup effect if using Flash is not an option. 1. Duplicate the slide you want to have the popup appear on and then hide it so it only displays when you want it to. 2. Add the Callout, text box or other popup object to the duplicated hidden slide. 3. On the original slide, add an "Action Button" and set its transparency to 100% to make it invisible(or use an existing object on the slide as Susan suggested) and set its Mouseover action property to "Hyperlink to: Slide ... (enter the duplicated, hidden slide number with the popup object). 4. If you need the popup object to disappear before you leave the slide, set the popup object's Mouseover property to Hyperlink to: "Last Slide Viewed". Then you can move the cursor to the popup and the slide show will return to the original slide making the popup object appear to "disappear". You can create multiple Action Buttons on the original slide and Hyperlink each one to a separate duplicate slide with a different popup object. As noted - this method is somewhat cumbersome but effective.

ssharkins
ssharkins

Do you use trigger objects, like I used in the example or do you use the callout to trigger itself -- or a combo of both?

jwlindsey
jwlindsey

... ("no fill" and "no line") as my trigger and place it to the left of a bulleted item on the slide. When I point the mouse at the invisible rectangle it changes to a hand. Clicking when the hand is visible brings up a supplemental picture or explanatory note. I also include an "exit" effect to remove it so the original slide is visible. If I have more than one "pop up" I create more triggers and have a hard copy of the slide in my notes that shows where the various triggers are located. Is that as clear as mud?

ssharkins
ssharkins

I like the idea of mapping your triggers in the notes -- great idea! Thank you!

Editor's Picks