You are currently offline, waiting for your internet to reconnect

How To Bring an Application Window to the Top with Focus

This article was previously published under Q186431
SUMMARY
This article describes how to use the BringToTop and FindWindow APIfunctions to bring another window to the foreground with the focus.
MORE INFORMATION

Step-by-Step Example

  1. Start a new Standard EXE project in Visual Basic. Form1 is created by default.
  2. Add three CommandButtons to Form1. You might want to increase the size of Command2 and Command3 to allow you to read the caption.
  3. Copy the following code to the General Declarations section of Form1:
          Option Explicit      Dim THandle As Long      Private Declare Function BringWindowToTop Lib "user32" (ByVal _         hwnd As Long) As Long      Private Declare Function FindWindow Lib "user32" Alias _         "FindWindowA" (ByVal lpClassName As Any, ByVal lpWindowName _         As Any) As Long      Private Sub Form_Load()         Command1.Caption = "Run the Calculator"         Command2.Caption = "Find Calculator's Handle"         Command3.Caption = "Bring Calculator To The Top"         Command2.Enabled = False         Command3.Enabled = False      End Sub      Private Sub Command1_Click()         Dim X As Long         X = Shell("Calc.exe", 1)         If X <> 0 Then            Command2.Enabled = True         End If      End Sub      Private Sub Command2_click()         THandle = FindWindow(vbEmpty, "Calculator")         If THandle = 0 Then            Command3.Enabled = False            MsgBox "Sorry, the calculator is running"            Exit Sub         End If         Command3.Enabled = True      End Sub      Private Sub Command3_click()         Dim iret As Long         iret = BringWindowToTop(THandle)      End Sub						
  4. Run the Program. When you click Command1, the calculator will appear and Command2 will be enabled. Enlarge the size of this program to maximize screen usage and then click Command2. If it finds the window handle for Calculator, it will enable Command3.
  5. Click Command3, and note that the Calculator window will be brought to the front so that it has the focus.
REFERENCES
For more information about API calls and API functions, search using thekeywords "API" or "Declare" in the Visual Basic On-line Help.

For information about creating a form that always stays on top, please seethe following article in the Microsoft Knowledge Base:
184297 : How To Create a Form That Always Stays on Top

(c) Microsoft Corporation 1998, All Rights Reserved. Contributions byRichard T. Edwards, Microsoft Corporation
SetTopMostWindow topmost kbDSupport kbDSD kbVBp500 kbSDKWin32 kbAPI kbVBp400 kbVBp600 kbVBp
Properties

Article ID: 186431 - Last Review: 06/29/2004 21:07:00 - Revision: 3.1

  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Visual Basic 6.0 Enterprise Edition
  • Microsoft Visual Basic 4.0 Standard Edition
  • Microsoft Visual Basic 4.0 Professional Edition
  • Microsoft Visual Basic 4.0 32-Bit Enterprise Edition
  • kbhowto kbgrpdsvb KB186431
Feedback