By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,608 Members | 3,801 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,608 IT Pros & Developers. It's quick & easy.

changing size of textbox to match form

P: n/a
I have a single text box (a large one) in a form that pops up. I want the
text box to change size as the user changes the size of the form. However,
doing me.txtbox.width = me.width doesn't work, as the width value of the
form doesn't seem to change, even as the form is resized by the user.

How can get the textbox to always be the same size as the form that contains
it?
Oct 25 '07 #1
Share this Question
Share on Google+
8 Replies


P: n/a
If the database is not split, and if it can have several users at once, it could become tricky to
set the values in such a way that each user will have customized settings.

If so you have MUCH bigger issues than form resizing. In such a
situation it is not IF your database will become corrupted but WHEN.

Nov 6 '07 #2

P: n/a
On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:
Actually, that doesn't work.
"I couldn't make that work." is always kinder and almost always more
correct.

Here's some code.It works!

Does it work for what you want to do?
I can't find your code in this thread (is it there?) so I have no
idea.

Can you make it work?
I don't care.

May it help someone else?
I hope.

Private Declare Function GetWindowRect Lib "user32" _
(ByVal hWnd As Long, lpRect As Rectangle) As Long

Private Type Rectangle
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type

Public Function FormLeft&(ByRef Form As Form)
Dim FormRectangle As Rectangle
GetWindowRect Form.hWnd, FormRectangle
FormLeft = FormRectangle.Left
End Function

Public Function FormTop&(ByRef Form As Form)
Dim FormRectangle As Rectangle
GetWindowRect Form.hWnd, FormRectangle
FormLeft = FormRectangle.Top
End Function


Nov 11 '07 #3

P: n/a

"lyle" <ly************@gmail.comwrote in message
news:11**********************@22g2000hsm.googlegro ups.com...
On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:
>Actually, that doesn't work.

"I couldn't make that work." is always kinder and almost always more
correct.
True. But in this case, since there is no WindowLeft or WindowTop property
in Access 2000, it just doesn't work.

But thanks for the ediquette tip.
Nov 12 '07 #4

P: n/a
On Mon, 12 Nov 2007 02:31:19 GMT, "Phil Reynolds" <ph*******@msn.com>
wrote:
>
"lyle" <ly************@gmail.comwrote in message
news:11**********************@22g2000hsm.googlegr oups.com...
>On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:
>>Actually, that doesn't work.

"I couldn't make that work." is always kinder and almost always more
correct.

True. But in this case, since there is no WindowLeft or WindowTop property
in Access 2000, it just doesn't work.

But thanks for the ediquette tip.
They certainly do work, except for the small error in the second
function. It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.
Nov 12 '07 #5

P: n/a
On Nov 11, 12:35 pm, lyle <lyle.fairfi...@gmail.comwrote:
On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:
Actually, that doesn't work.

"I couldn't make that work." is always kinder and almost always more
correct.

Here's some code.It works!

Does it work for what you want to do?
I can't find your code in this thread (is it there?) so I have no
idea.

Can you make it work?
I don't care.

May it help someone else?
I hope.

Private Declare Function GetWindowRect Lib "user32" _
(ByVal hWnd As Long, lpRect As Rectangle) As Long

Private Type Rectangle
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type

Public Function FormLeft&(ByRef Form As Form)
Dim FormRectangle As Rectangle
GetWindowRect Form.hWnd, FormRectangle
FormLeft = FormRectangle.Left
End Function

Public Function FormTop&(ByRef Form As Form)
Dim FormRectangle As Rectangle
GetWindowRect Form.hWnd, FormRectangle
FormLeft = FormRectangle.Top
End Function
Public Function FormTop&(ByRef Form As Form)
Dim FormRectangle As Rectangle
GetWindowRect Form.hWnd, FormRectangle
FormTop = FormRectangle.Top
End Function

Thanks, Arch.

Nov 12 '07 #6

P: n/a
OK, you and Lyle are coming late to the game here, so I can see you're not
following completely.

This thread started with a question about resizing a textbox as a
form/window is resized. Rick Brandt answered that, and his solution worked
fine. No problem.

About a week later I replied to Rick again and asked how can I restore the
position of the window after the user closes it and reopens it, since
InsideHeight and InsideWidth (the properties that Rick referred me to for
resizing) only referred to the size.

Rick didn't respond, but then BruceM replied to use the MoveSize function to
restore that position. That was fine; but it didn't address how to store the
position parameters in the first place. So I replied to Bruce and asked how
I would get the Top and Left values for the window to store for later
reopening.

Bruce replied to use the WindowLeft and WindowTop properties to get to
position coordinates.

AND IT WAS TO THAT that I said, "That doesn't work. There is not WindowLeft
or WindowTop property of a form in Access 2000."

In other words, the question being asked was "How to get the Left and Top
properties," and the answer was, "Use WindowLeft and WindowTop." Those
properties don't exist in Access 2000, so the solution didn't work. Plain
and simple.

Thus, you wrote:
They certainly do work, except for the small error in the second
function.
Yes, but that was ALL that was being asked -- how to get the Left and Top
properties. And the answer was wrong. So, even if it was a "small error," it
was still 100% of what was being asked.
It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.
Correct. And so Lyle's solution works, and the original didn't. What's the
issue here?

Please don't get me wrong. I do appreciate BruceM taking the time to help
me. And when I said, "That doesn't work," I was not being rude or
unappreciative. It was just a simple statement of fact. I asked how to get
the Left and Top values for a window. He said, "Use the WindowLeft and
WindowTop." But those properties don't exist in Access 2000, so I said,
"That doesn't work." What's the issue here?
"Arch" <se*****@spam.netwrote in message
news:h4********************************@4ax.com...
On Mon, 12 Nov 2007 02:31:19 GMT, "Phil Reynolds" <ph*******@msn.com>
wrote:
>>
"lyle" <ly************@gmail.comwrote in message
news:11**********************@22g2000hsm.googleg roups.com...
>>On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:

Actually, that doesn't work.

"I couldn't make that work." is always kinder and almost always more
correct.

True. But in this case, since there is no WindowLeft or WindowTop property
in Access 2000, it just doesn't work.

But thanks for the ediquette tip.

They certainly do work, except for the small error in the second
function. It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.

Nov 12 '07 #7

P: n/a
When I post questions I sometimes forget to provide version information, and
when I answer questions I tend to assume the person who asked has the same
version as I do. I think this thread demonstrates the importance of
providing version information. Had you mentioned Access 2000 I might have
remembered to provide the caveat that my reply is based on Access 2003, and
that I can't be sure it is in other versions.
In any case, I took your reply to mean just what you explained: that the
properties are not part of Access 2000. Glad to hear you found something
that works.

"Phil Reynolds" <ph*******@msn.comwrote in message
news:ps*******************@newssvr29.news.prodigy. net...
OK, you and Lyle are coming late to the game here, so I can see you're not
following completely.

This thread started with a question about resizing a textbox as a
form/window is resized. Rick Brandt answered that, and his solution worked
fine. No problem.

About a week later I replied to Rick again and asked how can I restore the
position of the window after the user closes it and reopens it, since
InsideHeight and InsideWidth (the properties that Rick referred me to for
resizing) only referred to the size.

Rick didn't respond, but then BruceM replied to use the MoveSize function
to restore that position. That was fine; but it didn't address how to
store the position parameters in the first place. So I replied to Bruce
and asked how I would get the Top and Left values for the window to store
for later reopening.

Bruce replied to use the WindowLeft and WindowTop properties to get to
position coordinates.

AND IT WAS TO THAT that I said, "That doesn't work. There is not
WindowLeft or WindowTop property of a form in Access 2000."

In other words, the question being asked was "How to get the Left and Top
properties," and the answer was, "Use WindowLeft and WindowTop." Those
properties don't exist in Access 2000, so the solution didn't work. Plain
and simple.

Thus, you wrote:
>They certainly do work, except for the small error in the second
function.

Yes, but that was ALL that was being asked -- how to get the Left and Top
properties. And the answer was wrong. So, even if it was a "small error,"
it was still 100% of what was being asked.
>It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.

Correct. And so Lyle's solution works, and the original didn't. What's the
issue here?

Please don't get me wrong. I do appreciate BruceM taking the time to help
me. And when I said, "That doesn't work," I was not being rude or
unappreciative. It was just a simple statement of fact. I asked how to get
the Left and Top values for a window. He said, "Use the WindowLeft and
WindowTop." But those properties don't exist in Access 2000, so I said,
"That doesn't work." What's the issue here?
"Arch" <se*****@spam.netwrote in message
news:h4********************************@4ax.com...
>On Mon, 12 Nov 2007 02:31:19 GMT, "Phil Reynolds" <ph*******@msn.com>
wrote:
>>>
"lyle" <ly************@gmail.comwrote in message
news:11**********************@22g2000hsm.google groups.com...
On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:

Actually, that doesn't work.

"I couldn't make that work." is always kinder and almost always more
correct.

True. But in this case, since there is no WindowLeft or WindowTop
property
in Access 2000, it just doesn't work.

But thanks for the ediquette tip.

They certainly do work, except for the small error in the second
function. It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.


Nov 12 '07 #8

P: n/a
Right -- I take responsiblity for not providing that version information.
And, as I noted, I don't really know what the issue is here, except that I
said, "It doesn't work," instead of, "I couldn't get it to work." But I
appreciate your taking the time to write either way! :-)
"BruceM" <ba****@yawhodotcalm.notwrote in message
news:%2****************@TK2MSFTNGP02.phx.gbl...
When I post questions I sometimes forget to provide version information,
and when I answer questions I tend to assume the person who asked has the
same version as I do. I think this thread demonstrates the importance of
providing version information. Had you mentioned Access 2000 I might have
remembered to provide the caveat that my reply is based on Access 2003,
and that I can't be sure it is in other versions.
In any case, I took your reply to mean just what you explained: that the
properties are not part of Access 2000. Glad to hear you found something
that works.

"Phil Reynolds" <ph*******@msn.comwrote in message
news:ps*******************@newssvr29.news.prodigy. net...
>OK, you and Lyle are coming late to the game here, so I can see you're
not following completely.

This thread started with a question about resizing a textbox as a
form/window is resized. Rick Brandt answered that, and his solution
worked fine. No problem.

About a week later I replied to Rick again and asked how can I restore
the position of the window after the user closes it and reopens it, since
InsideHeight and InsideWidth (the properties that Rick referred me to for
resizing) only referred to the size.

Rick didn't respond, but then BruceM replied to use the MoveSize function
to restore that position. That was fine; but it didn't address how to
store the position parameters in the first place. So I replied to Bruce
and asked how I would get the Top and Left values for the window to store
for later reopening.

Bruce replied to use the WindowLeft and WindowTop properties to get to
position coordinates.

AND IT WAS TO THAT that I said, "That doesn't work. There is not
WindowLeft or WindowTop property of a form in Access 2000."

In other words, the question being asked was "How to get the Left and Top
properties," and the answer was, "Use WindowLeft and WindowTop." Those
properties don't exist in Access 2000, so the solution didn't work. Plain
and simple.

Thus, you wrote:
>>They certainly do work, except for the small error in the second
function.

Yes, but that was ALL that was being asked -- how to get the Left and Top
properties. And the answer was wrong. So, even if it was a "small error,"
it was still 100% of what was being asked.
>>It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.

Correct. And so Lyle's solution works, and the original didn't. What's
the issue here?

Please don't get me wrong. I do appreciate BruceM taking the time to help
me. And when I said, "That doesn't work," I was not being rude or
unappreciative. It was just a simple statement of fact. I asked how to
get the Left and Top values for a window. He said, "Use the WindowLeft
and WindowTop." But those properties don't exist in Access 2000, so I
said, "That doesn't work." What's the issue here?
"Arch" <se*****@spam.netwrote in message
news:h4********************************@4ax.com.. .
>>On Mon, 12 Nov 2007 02:31:19 GMT, "Phil Reynolds" <ph*******@msn.com>
wrote:
"lyle" <ly************@gmail.comwrote in message
news:11**********************@22g2000hsm.googl egroups.com...
On Nov 11, 11:14 am, "Phil Reynolds" <philr2...@msn.comwrote:
>
>Actually, that doesn't work.
>
"I couldn't make that work." is always kinder and almost always more
correct.

True. But in this case, since there is no WindowLeft or WindowTop
property
in Access 2000, it just doesn't work.

But thanks for the ediquette tip.
They certainly do work, except for the small error in the second
function. It is because there is no WindowLeft or WindowTop
properties in Access 2000 that Lyle provided these very nice
functions.



Nov 12 '07 #9

This discussion thread is closed

Replies have been disabled for this discussion.