Hepp, Är det en befintlig applikation eller utvecklar ni mätprogramet? Mätvärdena kommer från en apparat som kunden själv utvecklat. Du kan använda Screen.AllScreens för att kolla om det finns fler än en skärm: Andreas,Applikation +dubbla skärmar
En kund till mig vill koppla en mätapparat till en laptop. Laptopen ska köra ett mätprogram som hämtar in mätvärden och visar dem i en applikation. Utöver det vill kunden kunna koppla en extern skärm till laptopen för att även på den skärmen kunna visa mätvärden i ett fullskärmsfönster.
Någon som vet vad som behövs för utrustning till laptopen för att kunna genomföra detta?
Och, går det att med vb.net/.net 2 få två olika fönster att lägga sig på respektive skärm?
/RickardSv: Applikation +dubbla skärmar
Sv:Applikation +dubbla skärmar
Applikationen som hämtar in värdena utvecklar jag.
/RickardSv: Applikation +dubbla skärmar
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For Each x As Screen In Screen.AllScreens
If Not x.Primary Then
Dim f As New Form2
f.StartPosition = FormStartPosition.Manual
f.Location = x.WorkingArea.Location
f.Size = x.WorkingArea.Size
f.WindowState = FormWindowState.Maximized
f.Show(Me)
Exit For
End If
Next
End Sub
Koden kollar om det finns fler än den primära skärmen och visar i så fall form2 på den skärmen.
Testad snabbt på min laptop med extern skärm.
Den koden rapporterar inget om det saknas extern skärm. Du kanske då vill visa en message box med ett meddelande om att ingen "extern" skärm hittades och/eller visa form2 ändå.
Du skulle oxå kunna lägga koden i Form 2 istället:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim f As New Form2
f.Show(Me)
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For Each x As Screen In Screen.AllScreens
If Not x.Primary Then
Me.StartPosition = FormStartPosition.Manual
Me.Location = x.WorkingArea.Location
Me.Size = x.WorkingArea.Size
Me.WindowState = FormWindowState.Maximized
Exit For
End If
Next
End Sub
Sv:Applikation +dubbla skärmar
Jag har provat liknande kod samt en extern skärm idag, det verkar funka prima.
Tack för din hjälp!
/Rickard