FIX: Common Dialog May Not Display the Current Font

ID: Q154820


The information in this article applies to:
  • Microsoft Visual Basic Standard, Professional, and Enterprise Editions, 16-bit and 32-bit, for Windows, version 4.0


SYMPTOMS

When you have set the common dialog controls FontName property, displaying the Font common dialog can result in the selected font being blank.


CAUSE

The problem is caused by setting the FontName property before setting the Flags property. It also occurs when the Flags property has already been set.


RESOLUTION

Set the Flags property to 0 before setting the FontName property. Then set the Flags property to the desired combination of flags after setting the FontName property.


STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug has been fixed in Visual Basic 5.0.


MORE INFORMATION

Steps to Reproduce Problem

  1. Start a project in Visual Basic. Form1 is created by default.


  2. Place two Command buttons on the form.


  3. Place a common dialog control onto the form.


  4. Add the following to the Command1_Click event:
    
       Private Sub Command1_Click()
    
         'This method will fail
         CommonDialog1.Flags = cdlCFBoth + cdlCFEffects
         CommonDialog1.FontName = "MS Sans Serif"
         CommonDialog1.ShowFont
    
       End Sub 


  5. Add the following to the Command2_Click event:
    
       Private Sub Command2_Click()
    
         'This method will work
         CommonDialog1.Flags = 0   'Required before setting FontName
         CommonDialog1.FontName = "MS Sans Serif"
         CommonDialog1.Flags = cdlCFBoth + cdlCFEffects
         CommonDialog1.ShowFont
    
       End Sub 


  6. Choose Start from the Run menu, or press the F5 key to start the program.


  7. Click the Command buttons and observe the behavior.


Additional query words: kbVBp400bug kbVBp500fix kbVBp kbdsd kbDSupport kbControl

Keywords : kbGrpVB
Version :
Platform : NT WINDOWS
Issue type : kbbug


Last Reviewed: January 5, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.