Solved

form to fill the screen,but not cover the taskbar

Posted on 2014-02-01
10
518 Views
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 ?
0
Comment
Question by:isnoend2001
  • 4
  • 4
  • 2
10 Comments
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 39827391
Have you tried:

MyForm.WindowState = vbMaximized
0
 

Author Comment

by:isnoend2001
ID: 39827732
Thanks : GrahamSkan, but that still covers the taskbar,
0
 
LVL 46

Expert Comment

by:Martin Liss
ID: 39827774
Which version of Visual Basic are you using? VB6, VB.Net, VBA?
0
VMware Disaster Recovery and Data Protection

In this expert guide, you’ll learn about the components of a Modern Data Center. You will use cases for the value-added capabilities of Veeam®, including combining backup and replication for VMware disaster recovery and using replication for data center migration.

 
LVL 76

Expert Comment

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

Author Comment

by:isnoend2001
ID: 39827790
vb6(sp6)professional on xp
0
 
LVL 46

Accepted Solution

by:
Martin Liss earned 500 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

0
 

Author Closing Comment

by:isnoend2001
ID: 39827835
Thanks
Guess the benefit of developing on xp has its benefits
0
 
LVL 46

Expert Comment

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

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.
0
 

Author Comment

by:isnoend2001
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
0

Featured Post

Use Case: Protecting a Hybrid Cloud Infrastructure

Microsoft Azure is rapidly becoming the norm in dynamic IT environments. This document describes the challenges that organizations face when protecting data in a hybrid cloud IT environment and presents a use case to demonstrate how Acronis Backup protects all data.

Question has a verified solution.

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

Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

773 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