vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Allgemeine Diskussionen
Bildschirmgroesse erkennen 
Autor: Franki
Datum: 15.10.14 07:40

Hallo zusammen,

Meine Frage bezieht sich sowohl auf VB.NET als auch auf VB6.

Wie kann ich die Groesse eines Bildschirms ermitteln auf dem meine Anwendung läuft? Ich rede nicht von der Auflösung des Bildschirms.

Eine gegebene (bzw. ermittelte) Auflösung von X mal Y kann ja auf einem 24 Zoll Monitor, aber auch auf einem 8 Zoll Tablet z.B. laufen. Und genau das möchte ich gerne wissen um in der Anwendung entsprechend reagieren zu können. (Z.B. Schriften groesser, Schaltflaechen groesser usw.)

Hat jemand eine Idee?

Gruß
Frank
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bildschirmgroesse erkennen 
Autor: minimalist
Datum: 15.10.14 11:04

Vieleicht hilft das hier weiter:
http://dotnet-snippets.de/snippet/screensize-berechnen/1599
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bildschirmgroesse erkennen 
Autor: Manfred X
Datum: 15.10.14 14:28

Hallo!

Du kannst in WMI schauen. Eventuell sind dort die gesuchten Informationen abgelegt:
http://msdn.microsoft.com/en-us/library/aa394122%28v=vs.85%29.aspx

Das Umstellen der Schriftgröße o.ä. reicht oft nicht aus.
Die Anzahl und der Aufbau der Formulare muß angepaßt werden.
Du könntest dem Benutzer etwa drei unterschiedliche Oberflächen
zur Verfügung stellst: geringe - mittlere - hohe Informationsmenge
pro Formular. Unter denen kann er auswählen.
Bei geringer Info-menge werden Usercontrols nicht auf dem
Stammformular präsentiert, sondern erst per Button-Click in einem
eigenen untergeordneten Formular.

Beitrag wurde zuletzt am 15.10.14 um 14:45:31 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bildschirmgroesse erkennen 
Autor: ModeratorDaveS (Moderator)
Datum: 15.10.14 18:15

Größe in Zoll = Pixelzahl / Dpi
Mehr oder weniger. In .Net z.B.
        Dim dpiw As Integer
        Dim dpih As Integer
        Using g As Graphics = Me.CreateGraphics()
            dpiw = g.DpiX
            dpih = g.DpiY
        End Using
        Dim width As Integer = Screen.PrimaryScreen.Bounds().Width / dpiw
        Dim height As Integer = Screen.PrimaryScreen.Bounds().Height / dpih
 
        MsgBox("Screensize=" & width.tostring() & """x" & Height.ToString() & _
          """")

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bildschirmgroesse erkennen 
Autor: Manfred X
Datum: 15.10.14 18:51

Hallo!

Die Dpi-Eigenschaften (Single) beziehen sich offenbar auf "logische Inches".
Das gilt auch für den Wert der "PixelsPerXLogicalInch"-Eigenschaft,
der von der DesktopMonitor-Klasse geliefert wird.

Brauchbare Resultate zur "physikalischen Display-Größe" hängen davon ab,
ob der jeweils eingerichtete Bildschirm-Treiber dem System geeignete
Informationen zur Verfügung stellt
(Es scheint Abweichungen bis 15% zwischen logischen und tatsächlichen
Inches zu geben).

Beitrag wurde zuletzt am 15.10.14 um 19:05:55 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Bildschirmgroesse erkennen 
Autor: ModeratorDaveS (Moderator)
Datum: 15.10.14 19:48

Eben "mehr oder weniger"...

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel