Anzeige
Archiv - Navigation
676to680
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
676to680
676to680
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

max. Bildschirmgrösse

max. Bildschirmgrösse
06.10.2005 19:08:49
harald
Hallo,
kann mir jemand sagen, auf welche Werte ich height und width einer Userform einstellen muss, damit diese bei meiner Auflösung von 1280 x 1024 Pixeln der gesamte Bildschirm bedeckt ist? Wenn ich 1100 und 800 eingebe, ist die Userform schon zu gross. Vielleicht kennt ja jemand die Einstellung und ich muss nicht ewig probieren, bis ich die richtigen Werte durch Zufall finde.
mfg
harald

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: max. Bildschirmgrösse
06.10.2005 19:20:05
Matthias
Hallo Harald,
so ungefähr:

Private Sub UserForm_Initialize()
Application.WindowState = xlMaximized
With Application
Me.Left = .Top
Me.Top = .Left
Me.Width = .Width - 5
Me.Height = .Height - 5
End With
End Sub

Gruß Matthias
AW: max. Bildschirmgrösse
06.10.2005 19:36:54
harald
Hallo Matthias,
mit deinem Code kann ich das Fenster zwar maximieren, aber um auch die Elemente bei einer Änderung der Bildschirmauflösung automatisch anzupassen (mit einem Code von Hajo), sollte die Userform im Originalzustand schon die richtige Grösse bei meiner Einstellung haben.
Bin aber inzwischen durch verkleinern bei 744(height) x 960 (width) angekommen, und das klappt so ungefähr.
Trotzdem vielen Dank
mfg
harald
Anzeige
AW: max. Bildschirmgrösse
07.10.2005 00:18:05
Ralf
Hallo Harald,
mit
Application.DisplayFullScreen = True
nutzt Du die gesamte Bildschirmgröße aus. (Nicht vergessen wieder zurück zu stellen!)
Wenn Du aber auf unterschiedliche Einstellungen der Grafikkarte reagieren willst, musst Du auf API zurück greifen. Ist aber eine ziemlich aufwendige Sache und wirklich nur dann nötig, wenn Du Deine Applikation auf bestimmte Einstellungen ausgerichtet hast, weitergeben willst und nicht weißt, welche Einstellungen andere User benutzen.
Ciao, Ralf
AW: max. Bildschirmgrösse
07.10.2005 06:47:39
harald
Hallo Ralf,
vielen Dank für den Tip. Ich will aber das programm auf anderen Rechnern start können und habe auch schon etwas entsprechendes von Hajo bekommen.
mfg
harald
Anzeige
AW: max. Bildschirmgrösse
07.10.2005 07:16:00
Ralf
Hallo Harald,
muß gleich weg, hab deshalb wenig Zeit. Deshalb nur kurz ein paar Hinweise. Unter http://www.allapi.net/ findest Du einen API Guide mit vielen Beispielen. Oder als schnelle Krücke:
In ein Standardmodul:
Option Explicit
Public Start as Boolean
Public Declare

Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
'Konstanten für GetSystemMetrics
Const Breite = 0        ' Konstante für Bildschirmbreite
Const Hoehe = 1        ' Konstante für Bildschirmhöhe
Public hoch As Long, breit As Long
Public 

Sub Ermitteln()
breit = GetSystemMetrics(Hoehe)
hoch = GetSystemMetrics(Breite)
'    MsgBox "Ihre Bildschirmauflösung ist: " & hoch & " mal " & breit
End Sub

Damit ermittelst Du die Auflösung des Nutzers. Dann in Form_Activate:
Private

Sub UserForm_Activate()
Static Start As Boolean
If Not Start Then
Bildschirmaufloesung.Ermitteln
Dim faktor As Double
If hoch = 640 Then
faktor = 0.8
ElseIf hoch = 720 Then
faktor = 0.9
ElseIf hoch = 848 Then
faktor = 1.06
ElseIf hoch = 1024 Then
faktor = 1.28
Else
faktor = 1
End If
Dim f1#
If breit = 480 Then
f1 = 0.8
ElseIf breit = 576 Then
f1 = 0.96
ElseIf breit = 768 Then
f1 = 1.28
ElseIf breit = 768 Then
Else
f1 = 1
End If
Dim x As Byte
frmReim.Height = frmReim.Height * faktor
frmReim.Width = frmReim.Width * f1
Dim obj As Control
For Each obj In Controls
'Hier werden z.Bsp. alle Objekte angepasst...
obj.Left = obj.Left * f1
obj.Top = obj.Top * faktor
obj.Width = obj.Width * f1
obj.Height = obj.Height * faktor
Next
End If
Start = True
...usw...
Wie gesagt, nur eine Krücke, aber für den Anfang ganz brauchbar...
Ciao, Ralf

Anzeige
AW: max. Bildschirmgrösse
07.10.2005 07:23:24
harald
Hallo Ralf,
vielen Dank für die Infos.
mfg
harald
AW: max. Bildschirmgrösse
06.10.2005 19:40:11
harald
Hallo chris-ka,
mit deinem Code kann ich das Fenster zwar maximieren, aber die Elemente darauf passen sich bei einer Änderung der Bildschirmauflösung nicht automatisch an. (Habe dafür einen Code von Hajo bekommen)
Bin aber inzwischen durch verkleinern bei 744(height) x 960 (width) angekommen, und das klappt so ungefähr.
Trotzdem vielen Dank
mfg
harald

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige