Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 142
  • Last Modified:

Default access font

How do I set it that all my contols text boxes, command buttons, labels etc.  have times new roman 11 as a default value. At the moment every new control is tahoma 8 and I have to remember to change it each time which is getting frustrating. Thanks for any help.
0
Eamon
Asked:
Eamon
  • 5
  • 2
  • 2
  • +1
1 Solution
 
GivenRandyCommented:
There is a template directory in both vb5 & vb6. You can put your form there and whenever you add form to your project, you can use your 'template' form.


0
 
yfangCommented:
Use control collection, similar to this:

Private Sub Command1_Click()
Dim x As Control
For Each x In Controls()
x.Font = "Courier"
Next

End Sub
0
 
AzraSoundCommented:
change your form's font to times new roman...and then add your controls to the form
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
AzraSoundCommented:
yfang...that doesnt work b/c you would have to ensure that each control in the collection has a font property...there are too many exceptions to do it that way
0
 
AzraSoundCommented:
the controls, by default, take the font of their container...so by setting the form's font to what you want, every control you add after that point will take on that font property as well
0
 
GivenRandyCommented:
What I mentioned is from the online Help and is automatic:

Templates are items that are saved in a specific directory structure in the \vb directory. They provide a way for you to re-use components and code, and to add them to projects.

When you choose the New Project command on the File menu, any projects found in the \template\projects directory appear in the New Project dialog box.

You can set the path for your template directory, or turn templates off, using the Environment tab of the Options dialog box.

0
 
yfangCommented:
Using Controls collection is definately an easy solution, especially if you have lots of controls in the container already.  If you have controls that do not have the "Font" property, as AzraSound have said, it won't work. However, you can always revise your code to solve the problem.  For example, you can judge what kind of control it is first:

Private Sub Command1_Click()
Dim x As Control, mystr As String

For Each x In Controls()
If Left(x.Name, 4) = "Text" Then
' If Left(x.Name, 3)="txt" then
x.Font = "Courier"
x.FontSize = 14
End If
Next

End Sub

0
 
AzraSoundCommented:
ok thats assuming the control's name is Text----  something or other.  what about labels?  what about command buttons?  you have no way of knowing what the person named his/her controls. the correct way to do that is as follows for example:

For i = 0 To Controls.Count - 1
   If TypeOf Controls(i) Is Timer Then
      'do nothing
   If TypeOf Controls(i) Is CommonDialog Then
      'do nothing
   etc...

but there are just waaay too many controls to have to check so it is not a very implementable solution.
0
 
RuchiCommented:
To make a change to each of the controls on a form, use this.

Dim chgControl As Control
For Each chgControl In Controls
    chgControl.Font = "Times New Roman"
Next chgControl
0
 
AzraSoundCommented:
ruchi please read the previous comments
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 5
  • 2
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now