Herbers Excel-Forum - das Archiv

UserForm auf Vollbildschirm

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: UserForm auf Vollbildschirm
von: bastian

Geschrieben am: 15.03.2005 11:10:03
Hi,
ich möchte eine Userform immer als Vollbildschirm darstellen. Dazu muss ich ja erstmal die aktuelle Auflösung abgreifen und dann der form mittels userform.heigth und userform.witdh zuweisen ... denke ich. Doch wie komme ich an die aktuellen Auflösungen des jeweiligen PCs ? Ich befürchte das .width und .height keine Skalierungen sind, sondern nur die UserForm strecken, nicht aber alle Steuerelemente mit. Wie kann man das machen ?
Hat jemand einen Tipp ?
Vielen Dank und Gruss,
Bastian
Bild

Betrifft: AW: UserForm auf Vollbildschirm
von: Bert
Geschrieben am: 15.03.2005 11:19:27
Dazu gabs schon mal eine professionelle Lösung von K.Rola mit Userform resize und zoom.
Musst halt mal die Recherche bemühen.
Bert
Bild

Betrifft: AW: UserForm auf Vollbildschirm
von: Werner_R
Geschrieben am: 15.03.2005 11:24:34
Hallo Bastian,
Versuch es mal so.

Private Sub UserForm_Initialize()
Me.Width = Application.Width
Me.Height = Application.Height
End Sub

Das hab ich im Googel gefunden.
Gruss Werner
Bild

Betrifft: AW: UserForm auf Vollbildschirm
von: bastian

Geschrieben am: 15.03.2005 12:37:32
Hi,
der Tipp von Werner verändert die Grösse auf die des Excelfensters, das will ich nicht, die kann ja auch ganz anders sein. Ich will unabhängig von allem immer die aktuelle Auflösung für die UserForm übernehmen. Wenn ich erstmal die aktuelle des PCs, auf dem es läuft ermitteln kann ist es kein Problem mehr, dann muss man nur noch rechnen. Um diese herauszufinden habe ich in der Zwischenzeit habe ich folgendes gefunden:
Dim x, y As Integer
x = Screen.Width / Screen.TwipsPerPixelX
y = Screen.Height / Screen.TwipsPerPixelY
Das funzt bei mir aber nicht, ich bekomme "Objekt erforderlich" gemeldet, "Screen" kennt er nicht. Muss ich da noch irgendwelche Standardverweise ergänzen ?
Gruss & Dank,
Bastian
Bild

Betrifft: Schau in die Recherche oT
von: Uduuh
Geschrieben am: 15.03.2005 12:46:05
Bild

Betrifft: AW: Schau in die Recherche oT
von: bastian

Geschrieben am: 15.03.2005 13:24:20
hi,
hab folgendes bei http://www.donkarl.com/AccessFAQ.htm?/FAQ/FAQ4Formulare.htm gefunden:
Kopiere folgendes in den Deklarationsbereich:
Declare
Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Const SM_CXSCREEN = 0
Const SM_CYSCREEN = 1
Aufruf dann z.B. über eine Funktion wie:
Public 
Function fctAufloesung()
fctAufloesung = "Pixel horizontal: " & GetSystemMetrics(SM_CXSCREEN) & _
"  vertikal: " & GetSystemMetrics(SM_CYSCREEN)
End Function

Gruss Bastian
Bild

Betrifft: AW: UserForm auf Vollbildschirm
von: neimes

Geschrieben am: 15.03.2005 13:52:36
Hi Bastian,
ich hab ähnliches gemacht, funzd relativ gut.
die zahl in "If GetSystemMetrics(0) = 800 Then" gibt die aktuelle horizontale auflösung an.
bei standardauflösungen ist das kein problem, bei exoten hab ichs noch nicht probiert.
je nach auflösung wird die userformgröße angepasst.
steuerlemente kannst du ja über die zoom funktion anpassen
ciao
alexe
ps code ist in modul untergebracht und wird bei macro start uber "userform initialize" mit "call screenres" gestartet

Declare
Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Sub screenres()
If GetSystemMetrics(0) = 800 Then
UserForm1.Width = 600
UserForm1.Height = 450
UserForm1.KeepScrollBarsVisible = fmScrollBarsBoth
UserForm1.ScrollHeight = 744
UserForm1.ScrollWidth = 957
End If
If GetSystemMetrics(0) = 1024 Then
UserForm1.Width = 768
UserForm1.Height = 576
UserForm1.KeepScrollBarsVisible = fmScrollBarsBoth
UserForm1.ScrollHeight = 744
UserForm1.ScrollWidth = 957
End If
If GetSystemMetrics(0) = 1152 Then
UserForm1.Width = 858
UserForm1.Height = 648
UserForm1.KeepScrollBarsVisible = fmScrollBarsBoth
UserForm1.ScrollHeight = 744
UserForm1.ScrollWidth = 957
End If
If GetSystemMetrics(0) = 1280 Then
UserForm1.KeepScrollBarsVisible = fmScrollBarsNone
UserForm1.Width = 960
UserForm1.Height = 768
End If
End Sub

 Bild
Excel-Beispiele zum Thema "UserForm auf Vollbildschirm"
Diagramm in Userform XL-Dateien in UserForm listen
UserForm an Excel-Fenster anpassen Fundstellen in UserForm listen
Module und UserForms austauschen In einer Schleife auf Elemente einer UserForm zugreifen
Werte in eine ComboBox einer UserForm übernehmen Zellinhalt als Label-Aufschrift in UserForm
Alle CheckBoxes einer UserForm ansprechen Wenn kein Eintrag, UserForm nicht schließen