[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now


form to fill the screen,but not cover the taskbar

Posted on 2014-02-01
Medium Priority
Last Modified: 2014-02-02
I have a form I want to fill the whole screen, but not cover the taskbar.
I realize the taskbar could be on the top, bottom or sides.
How to write this ?
Question by:isnoend2001
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
  • 2
LVL 76

Expert Comment

ID: 39827391
Have you tried:

MyForm.WindowState = vbMaximized

Author Comment

ID: 39827732
Thanks : GrahamSkan, but that still covers the taskbar,
LVL 49

Expert Comment

by:Martin Liss
ID: 39827774
Which version of Visual Basic are you using? VB6, VB.Net, VBA?
Concerto Cloud for Software Providers & ISVs

Can Concerto Cloud Services help you focus on evolving your application offerings, while delivering the best cloud experience to your customers? From DevOps to revenue models and customer support, the answer is yes!

Learn how Concerto can help you.

LVL 76

Expert Comment

ID: 39827777
Hmm. It doesn't in my tests- Windows 7 (64) and VB6 (sp6)

Author Comment

ID: 39827790
vb6(sp6)professional on xp
LVL 49

Accepted Solution

Martin Liss earned 2000 total points
ID: 39827803
I agree with Graham, but this will work too.

Option Explicit

Private Const SPI_GETWORKAREA = 48
Private Declare Function SystemParametersInfo& Lib "User32" Alias "SystemParametersInfoA" ( _
ByVal uAction As Long, _
ByVal uParam As Long, lpvParam As Any, _
ByVal fuWinIni As Long)

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

Public Function FillScreen(frm As Form)
    Dim rectDesktop As RECT
    Call SystemParametersInfo(SPI_GETWORKAREA, 0, rectDesktop, 0)

    With Form1
        .Left = rectDesktop.Left * Screen.TwipsPerPixelX
        .Height = (rectDesktop.Bottom - rectDesktop.Top) * Screen.TwipsPerPixelY
        .Width = (rectDesktop.Right - rectDesktop.Left) * Screen.TwipsPerPixelX
        .Top = rectDesktop.Top * Screen.TwipsPerPixelY
    End With
End Function

Private Sub Form_Load()
FillScreen Form1
End Sub

Open in new window


Author Closing Comment

ID: 39827835
Guess the benefit of developing on xp has its benefits
LVL 49

Expert Comment

by:Martin Liss
ID: 39827856
You're welcome.
LVL 49

Expert Comment

by:Martin Liss
ID: 39827909
isnoend2001, just out of curiosity, is your form borderless? If it is then that would explain why Graham's suggestion didn't work for you.

Author Comment

ID: 39827926
No the form is not bordeless, but i plan on making one bordeless to act as a background
for smaller forms. I will post a question for this

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

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

If you have ever used Microsoft Word then you know that it has a good spell checker and it may have occurred to you that the ability to check spelling might be a nice piece of functionality to add to certain applications of yours. Well the code that…
Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
Suggested Courses

656 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