ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Show/Hide Minimize/Maximize Button in Excel 2007/2010 (https://www.excelbanter.com/excel-programming/444152-show-hide-minimize-maximize-button-excel-2007-2010-a.html)

[email protected]

Show/Hide Minimize/Maximize Button in Excel 2007/2010
 
I found this code posted by Chip Pearson on the internet.

Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_MINIMIZEBOX = &H20000
Private Const GWL_STYLE = (-16)

Private Declare Function GetWindowLong Lib "user32" Alias
"GetWindowLongA" ( _
ByVal HWnd As Long, _
ByVal nIndex As Long) As Long

Private Declare Function SetWindowLong Lib "user32" Alias
"SetWindowLongA" ( _
ByVal HWnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Sub ShowMinMax(ShowMin As Boolean, ShowMax As Boolean)
Dim WinInfo As Long
WinInfo = GetWindowLong(Application.HWnd, GWL_STYLE)

If ShowMin = True Then
WinInfo = WinInfo Or WS_MINIMIZEBOX
Else
WinInfo = WinInfo And (Not WS_MINIMIZEBOX)
End If
If ShowMax = True Then
WinInfo = WinInfo Or WS_MAXIMIZEBOX
Else
WinInfo = WinInfo And (Not WS_MAXIMIZEBOX)
End If
SetWindowLong Application.HWnd, GWL_STYLE, WinInfo
End Sub

How do I pass a variable to implement the ShowMinMax routine?

TIA

Jim Cone[_2_]

Show/Hide Minimize/Maximize Button in Excel 2007/2010
 
Sub GetStarted
Dim BigSize as Boolean
Dim SmallSize as Boolean

BigSize = True
Call ShowMinMax(SmallSize, BigSize)
End Sub
--
Jim Cone
Portland, Oregon USA
http://www.mediafire.com/PrimitiveSoftware
(Formats & Styles: lists or removes unused styles & number formats - in the free folder)





wrote in message
...
I found this code posted by Chip Pearson on the internet.

Private Const WS_MAXIMIZEBOX = &H10000
Private Const WS_MINIMIZEBOX = &H20000
Private Const GWL_STYLE = (-16)

Private Declare Function GetWindowLong Lib "user32" Alias
"GetWindowLongA" ( _
ByVal HWnd As Long, _
ByVal nIndex As Long) As Long

Private Declare Function SetWindowLong Lib "user32" Alias
"SetWindowLongA" ( _
ByVal HWnd As Long, _
ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Sub ShowMinMax(ShowMin As Boolean, ShowMax As Boolean)
Dim WinInfo As Long
WinInfo = GetWindowLong(Application.HWnd, GWL_STYLE)

If ShowMin = True Then
WinInfo = WinInfo Or WS_MINIMIZEBOX
Else
WinInfo = WinInfo And (Not WS_MINIMIZEBOX)
End If
If ShowMax = True Then
WinInfo = WinInfo Or WS_MAXIMIZEBOX
Else
WinInfo = WinInfo And (Not WS_MAXIMIZEBOX)
End If
SetWindowLong Application.HWnd, GWL_STYLE, WinInfo
End Sub

How do I pass a variable to implement the ShowMinMax routine?
TIA




[email protected]

Show/Hide Minimize/Maximize Button in Excel 2007/2010
 
On Sun, 23 Jan 2011 10:29:38 -0800, "Jim Cone"
wrote:

Sub GetStarted
Dim BigSize as Boolean
Dim SmallSize as Boolean

BigSize = True
Call ShowMinMax(SmallSize, BigSize)
End Sub


Thank you so much.

It's interesiting to note the effect of the four different combination
possibilities.

BigSize = False, SmallSize = False hides both restore and minimize
buttons.

BigSize = True, SmallSize = True restores/shows both restore and
minimize buttons.

BigSize = True, SmallSize = False - Shows both buttons with the
minimize button deactivated.

BigSize = False, SmallSize = True - Shows both buttons with the
restore button deactivated.

Again, Thank You. Your help is appreciated.


All times are GMT +1. The time now is 02:33 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com