Objects to fit the form when resize

I want the objects to fit the form when I resize it. How do I do that? I'm working in VB 4
ChristianJAsked:
Who is Participating?
 
CarlosJacConnect With a Mentor Commented:
Try this:

Private Sub Form_Resize()
        Dim myScale As Single
        vp.Top = 0
        vp.Left = 0
        myScale = ScaleHeight - vp.Top
        If myScale > 0 Then vp.Height = myScale
        myScale = ScaleWidth - vp.Left - vp.Top
        If myScale > 0 Then vp.Width = myScale
        DoEvents
End Sub
 
0
 
ChristianJAuthor Commented:
This will mean a lot to me. I have tried to solve this on my own for month, but I didn't make it.
0
 
clifABBCommented:
Checkout elastic light from Videosoft:
www.videosoft.com
0
Cloud Class® Course: Ruby Fundamentals

This course will introduce you to Ruby, as well as teach you about classes, methods, variables, data structures, loops, enumerable methods, and finishing touches.

 
ChristianJAuthor Commented:
Edited text of question
0
 
ChristianJAuthor Commented:
Adjusted points to 75
0
 
ChristianJAuthor Commented:
I just want to know how to write to get the objects on a form to fit the form when i resize it. (VB 4)

0
 
clifABBCommented:
Consider the hard way (the easy way is getting a control to do it for you):

In the form's load event, you need to keep track of every controls size and position in comparison to the form.  A percentheight, percentwidth, percentleft, and percenttop, if you will.  Then in the form's resize event, you will have to go through each control and re-adjust the size and location based on the new form's size multiplied by those percent* values for that control.
While this may sound easy for a few controls on a form, several controls can be unwieldy and dozens of controls virtually impossible.
0
 
CarlosJacCommented:
For few controls in a form: (vp is a control)

Private Sub Form_Resize()
    Dim myScale!
    myScale! = ScaleHeight - 2 * vp.Top
    If myScale! > 0 Then vp.Height = myScale!
    myScale! = ScaleWidth - vp.Left - vp.Top
    If myScale! > 0 Then vp.Width = myScale!
    DoEvents
End Sub

0
 
ChristianJAuthor Commented:
I'm sorry the code you wrote didn't work.

Private Sub Form_Resize()
        Dim myScale!
        myScale! = ScaleHeight - 2 * vp.Top
        If myScale! > 0 Then vp.Height = myScale!
        myScale! = ScaleWidth - vp.Left - vp.Top
        If myScale! > 0 Then vp.Width = myScale!
        DoEvents
    End Sub


It appears a run-time-error '424' (myScale!) when I rum my program. Do I need to write anything else in the other procs?

0
 
ChristianJAuthor Commented:
In my project I have commadbuttons, dirlistbox, filelistbox, labels, imageScaler dirlistbox. Should i write anything in those objects to?
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.