太感谢5楼了,给我发来了工程原件。所有问题迎刃而解了!特此贴出来和大家分享。我整理过的代码如下:Option ExplicitPrivate Type RECT Left As Long Top As Long Right As Long Bottom As Long End TypePrivate Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByRef lpvParam As Any, ByVal fuWinIni As Long) As LongPrivate Const SPI_GETWORKAREA = 48 Private Const SPI_SETWORKAREA = 47 Private Const SPIF_SENDCHANGE = 2 Private m_flag As Boolean Private m_deltaH As Long Private Sub Form_Load() Dim tRect As RECT Call SystemParametersInfo(SPI_GETWORKAREA, 0, tRect, 0) With tRect .Bottom = .Bottom - 55 'cy是你新加的任务栏高度 End With Call SystemParametersInfo(SPI_SETWORKAREA, 0, tRect, SPIF_SENDCHANGE) End Sub
SPI_SETWORKAREA
SPIF_SENDCHANGE
这3个API常量,统统需要声明。
Left As Long
Top As Long
Right As Long
Bottom As Long
End TypePrivate Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByRef lpvParam As Any, ByVal fuWinIni As Long) As LongPrivate Const SPI_GETWORKAREA = 48
Private Const SPI_SETWORKAREA = 47
Private Const SPIF_SENDCHANGE = 2
Private m_flag As Boolean
Private m_deltaH As Long
Private Sub Form_Load()
Dim tRect As RECT
Call SystemParametersInfo(SPI_GETWORKAREA, 0, tRect, 0)
With tRect
.Bottom = .Bottom - 55 'cy是你新加的任务栏高度
End With
Call SystemParametersInfo(SPI_SETWORKAREA, 0, tRect, SPIF_SENDCHANGE)
End Sub