Solved

Objects to fit the form when resize

Posted on 1998-09-14
10
226 Views
Last Modified: 2012-05-04
I want the objects to fit the form when I resize it. How do I do that? I'm working in VB 4
0
Comment
Question by:ChristianJ
  • 6
  • 2
  • 2
10 Comments
 

Author Comment

by:ChristianJ
ID: 1434758
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
 
LVL 6

Expert Comment

by:clifABB
ID: 1434759
Checkout elastic light from Videosoft:
www.videosoft.com
0
 

Author Comment

by:ChristianJ
ID: 1434760
Edited text of question
0
Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 

Author Comment

by:ChristianJ
ID: 1434761
Adjusted points to 75
0
 

Author Comment

by:ChristianJ
ID: 1434762
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
 
LVL 6

Expert Comment

by:clifABB
ID: 1434763
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
 
LVL 1

Expert Comment

by:CarlosJac
ID: 1434764
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
 

Author Comment

by:ChristianJ
ID: 1434765
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
 

Author Comment

by:ChristianJ
ID: 1434766
In my project I have commadbuttons, dirlistbox, filelistbox, labels, imageScaler dirlistbox. Should i write anything in those objects to?
0
 
LVL 1

Accepted Solution

by:
CarlosJac earned 70 total points
ID: 1434767
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

Featured Post

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Excel VBA combine two working workbooks 8 60
using Access 8 75
VBA: Select SQL query based on a config Sheet v2 11 49
vbModal 12 57
Introduction In a recent article (http://www.experts-exchange.com/A_7811-A-Better-Concatenate-Function.html) for the Excel community, I showed an improved version of the Excel Concatenate() function.  While writing that article I realized that no o…
Introduction While answering a recent question (http://www.experts-exchange.com/Q_27402310.html) in the VB classic zone, I wrote some VB code in the (Office) VBA environment, rather than fire up my older PC.  I didn't post completely correct code o…
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question