?
Solved

How do I tell which monitor a form is on when there are more than 2 monitors

Posted on 2011-03-10
2
Medium Priority
?
339 Views
Last Modified: 2012-06-27
Friends,

I have used a routine in the past to reopen a form on a dual screen setup; however, my company now has a four monitor setup where they run this app.

I tried the attached code, but I cannot make it work, it never correctly identifies the right monitor that the ResultViewerForm is on...

Even if I have the form on the second display, it shows that the display (i) is zero.

I want to use this saved in the application properties, to open subsequent forms in the same location/screen.

Thanks in advance!

When I run the attached code, here are my variables on the second loop through...:

            i      1      Integer
            String1      "\\.\DISPLAY2"      String
            String2      "\\.\DISPLAY1,"      String


The thing I don't understand is that String2 should say DISPLAY2, because that is the monitor it is on:

I guess what I need help with, is how do I get the form to tell me which screen it's on...
For i As Integer = 0 To Screen.AllScreens().Length - 1

            Dim String1 As String = stringtoasc(Screen.AllScreens(i).DeviceName.ToString)
            Dim String2 As String = stringtoasc(Screen.FromControl(ResultViewerForm).DeviceName.ToString)

            If String1 = String2 Then
                My.Settings.StartupLocation_Scrn = i
            End If

Open in new window

0
Comment
Question by:indy500fan
[X]
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
2 Comments
 
LVL 96

Accepted Solution

by:
Bob Learned earned 2000 total points
ID: 35102414
I would think that you could test if the form's location is within the working area of a Screen.

Untested example:

For Each screen As Screen In Screen.AllScreens
    If screen.WorkingArea.Contains(Me.Location) Then
    End If
Next screen

Open in new window

0
 

Author Comment

by:indy500fan
ID: 35143127
Bob,

I'm glad you responded.  I'm going to test your suggestion, but I had to move on with a brute force solution.  Looking at it, I think it will work (you've not led me wrong in the past), so I will accept your suggestion as the solution.

Thanks,

Eric
0

Featured Post

Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

Question has a verified solution.

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

The ECB site provides FX rates for major currencies since its inception in 1999 in the form of an XML feed. The files have the following format (reducted for brevity) (CODE) There are three files available HERE (http://www.ecb.europa.eu/stats/exch…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
In this brief tutorial Pawel from AdRem Software explains how you can quickly find out which services are running on your network, or what are the IP addresses of servers responsible for each service. Software used is freeware NetCrunch Tools (https…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.
Suggested Courses

765 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