UseCommonDialog




'1: choose printer

Public Sub ChoosePrinter
Const ErrCancel = 32755
CommonDialog1.CancelError = True
On Error GoTo errorPrinter
CommonDialog1.Flags = 64
'see the Help on Flags Properties (Print Dialog)

CommonDialog1.ShowPrinter
CommonDialog1.PrinterDefault = False
Exit Sub
errorPrinter:
If Err = ErrCancel Then Exit Sub Else Resume
End Sub

'2: choose font

Global vScreenFont, vScreenFontSize
Public Sub ChooseFont()
CommonDialog1.Flags = cdlCFScreenFonts
'see the Help on Flags Properties (Font Dialog)

CommonDialog1.ShowFont

vScreenFont = CommonDialog1.FontName
vScreenFontSize = CommonDialog1.FontSize
Call ChangeFont(Form1)

End Sub

Public Sub ChangeFont(X As Form)
Dim Control

For Each Control In X.Controls
If TypeOf Control Is Label Or _
TypeOf Control Is TextBox Or _
TypeOf Control Is CommandButton Or _
TypeOf Control Is ComboBox Or _
TypeOf Control Is ListBox Or _
TypeOf Control Is CheckBox Then

Control.Font = vScreenFont
Control.FontSize = vScreenFontSize
End If
Next Control
End Sub

'3: choose color

Global vColor
Public Sub ChooseColor
CommonDialog1.Flags = &H1& Or &H4&
'see the Help on Flags Properties (Color Dialog)

CommonDialog1.ShowColor
vColor = CommonDialog1.Color
' if you want to convert the color to hex use

' MsgBox Convert2Hex(vColor)

' if you want to repaint youre background use

' Call ChangeColor(X as Form)

End Sub

Public Sub ChangeColor(X As Form)
Dim Control
X.BackColor = vColor
For Each Control In X.Controls
If TypeOf Control Is Label Or _
TypeOf Control Is TextBox Or _
TypeOf Control Is CommandButton Or _
TypeOf Control Is ComboBox Or _
TypeOf Control Is ListBox Or _
TypeOf Control Is CheckBox Then

Control.BackColor = vColor
End If
Next Control
End Sub

Public Function Convert2Hex(color) as String
Dim RedValue, GreenValue, BlueValue
RedValue = (color And &HFF&)
GreenValue = (color And &HFF00&) \ 256
BlueValue = (color And &HFF0000) \ 65536
Convert2Hex = Format(Hex(RedValue) & Hex(GreenValue) & Hex(BlueValue), "000000")
End Function

1: choose printer
2: choose font
3: choose color










( usecommondialog.html )- by Paolo Puglisi - Modifica del 17/12/2023