Solved

Set minimum size of a window

Posted on 1998-05-16
9
246 Views
Last Modified: 2013-12-03
How can I use WinAPI to set a minimize size for a window?
also, can I set a maximum size too?
0
Comment
Question by:leeal
  • 4
  • 4
9 Comments
 
LVL 3

Accepted Solution

by:
tma050898 earned 40 total points
ID: 1402277
You need to handle the WM_GETMINMAXINFO message and fill out the passed structure as to the min and max of your window.

0
 
LVL 1

Author Comment

by:leeal
ID: 1402278
Can you give me more details?
0
 
LVL 3

Expert Comment

by:tma050898
ID: 1402279
Actually, I need more details. What language are you using?
0
Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

 
LVL 1

Author Comment

by:leeal
ID: 1402280
I am using VB5.
0
 
LVL 3

Expert Comment

by:tma050898
ID: 1402281
I was afraid you were going to say that ;)

Ok. I haven't touched VB since 3.0, but believe or not, the only time I've ever used the WM_GETMINMAXINFO msg was from a VB app. When I used VB it did not provide programmers the ability to handle Windows messages. IOW, programmers could only select events from a fixed set of events for each object. Therefore, we used a product from Desaware called Spy Works in order to handle Windows messsages. So the questions are...

1. Does VB5 now allow you to directly handle Windows messages (as opposed to picking from a fixed set of events for an object)?
2. If not, do you have a product like SpyWorks or a similar competitor's product (e.g., Sheridan, MicroHelp, etc.)???

0
 
LVL 1

Author Comment

by:leeal
ID: 1402282
1. ummm, I'm not sure. But there's an "addressof" operator that can return the address of a procedure.
2. no, I don't.
0
 

Expert Comment

by:bbarber
ID: 1402283
Can you process the WM_SIZE message which is passed to any window that receives a command to resize. Then if the size requested is not within your boundries, set it to your min or max value.
0
 
LVL 3

Expert Comment

by:tma050898
ID: 1402284
bbarber,
No. The only way to do this is by handling the WM_GETMINMAXINFO msg.  A struct is passed in this msg that has min max tracking members. Setting these will cause windows to not allow the window to be size beyond the ranges specified by the application.

The problem leeal is having is that vb doesn't allow for the handling of msgs that aren't inherently supported and presented in a static list of events. I've done what he wants to do with SpyWorks because they have a vbx and an ocx that allows vb applications to receive and process windows msgs. However, he doesn't have SpyWorks or any other tool.

leeal,
Sorry about not posting in a couple of days. It took me two days to finally found track down free tool that does what you want. It's called MsgHook and can be downloaded for free at www.download.com 

If this is the way you want to go, download it and play with it. From what I've read it will do what you need. I've never used it, but if you have any problems post a new question and I (or another expert) will help in any way we can.

Tom




0
 
LVL 1

Author Comment

by:leeal
ID: 1402285
Thanks, Tom.
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
VS2015 compilation and missing DLLs 9 147
Is COM supported from Apache 1 52
Having a different time zone on your task bar 3 64
Using MS Code on my Mac 6 67
This article surveys and compares options for encoding and decoding base64 data.  It includes source code in C++ as well as examples of how to use standard Windows API functions for these tasks. We'll look at the algorithms — how encoding and decodi…
For most people, the WrapPanel seems like a magic when they switch from WinForms to WPF. Most of us will think that the code that is used to write a control like that would be difficult. However, most of the work is done by the WPF engine, and the W…
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

813 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

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now