Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

UserForms fixieren?

430 views
Skip to first unread message

Marion und Andreas Wieg

unread,
Dec 7, 2000, 3:00:00 AM12/7/00
to
Hallo,
lassen sich UserForms irgendwie auf dem Desktop fixieren? Ich habe in der
Onlinehilfe von Exel die Eigenschaft *fmDragBehaviorEnabled* der Klasse
*fmDragBehavior* in der Bibliothek *msForms* gefunden, weiss diese jedoch
leider nicht einzusetzen.
Hat vielleicht jemand einen Tipp fuer mich?

--
MfG

Andreas Wieg
DAMF...@t-online.de
Ammersbek bei Hamburg
Germany

Wilfried Butzek

unread,
Dec 8, 2000, 10:17:34 AM12/8/00
to

Hallo Andreas,

zur Entwurfszeit in der VBA-Entwicklungsumgebung
das Eigenschaftsfenster fuer das UserForm einblenden
und fuer die Eigenschaften "Left" und "Top" Werte > 0
vergeben.

Zur Laufzeit ebenso, z.B:

Sub FixierenForms()
Load UserForm1
UserForm1.Left = 280
UserForm1.Top = 200
UserForm1.Show
End Sub

Pass aber auf dabei und waehle die Werte nicht zu
Gross oder zu klein (je nach Aufloesung), sonst
verschwindet es vom Bildschirm.

Mit freundlichem Gruss
Wilfried

Marion und Andreas Wieg

unread,
Dec 8, 2000, 11:40:24 AM12/8/00
to
Lieber Wilfried,
das habe ich ausprobiert, mein Problem ist weiterhin, dass sich das
Dialogfeld mittels Drag And Drop an der Titelleiste bewegen laesst.
Danke,
Andreas

"Wilfried Butzek" <Wilfrie...@t-online.de> schrieb im Newsbeitrag
news:90qtrc$t4c$03$2...@news.t-online.com...

Dr. Eckehard Pfeifer

unread,
Dec 8, 2000, 12:35:56 PM12/8/00
to
Hallo, abgesehen davon, dass ich mir nicht genau vorstellen kann, weshalb
ein Formular als Fenster wie Du und ich den Bildschirm blockieren sollte,
ein Hinweis: Mit Drag and Drop hat das Verschieben eines Formulars nichts zu
tun (deshalb ist auch der Hilfetext nicht relevant, es geht dort um das Drag
and Drop von Steuerelementen auf dem Formular), sondern es wird nur top und
left veraendert. Man kann vielleicht mit Win API etwas unternehmen (auch
nicht einfach, da hwnd-Eigenschaft fehlt), ansonsten gibt es nur eine
Reaktion auf Aendern der Groesse und Click, Keydown usw. ausserhalb der
Titelleiste.

--
Mit freundlichen Grüßen
Eckehard Pfeifer

VBA-WorkShops in Dresden, Info unter www.dr-e-pfeifer.de
Ein Blick lohnt sich immer: www.vba-magazin.de

Marion und Andreas Wieg

unread,
Dec 8, 2000, 3:54:43 PM12/8/00
to
Danke,
habe verstanden (auf jeden Fall ein wenig).

--
MfG

Andreas Wieg
DAMF...@t-online.de
Ammersbek bei Hamburg
Germany

"Dr. Eckehard Pfeifer" <pri...@dr-e-pfeifer.de> schrieb im Newsbeitrag
news:#omY11TYAHA.249@cppssbbsa03...

Michael Schwimmer

unread,
Dec 10, 2000, 2:01:14 PM12/10/00
to

Marion und Andreas Wieg <DAMF...@t-online.de> schrieb in im Newsbeitrag:
90r2vi$1b8$03$1...@news.t-online.com...

> das habe ich ausprobiert, mein Problem ist weiterhin, dass sich das
> Dialogfeld mittels Drag And Drop an der Titelleiste bewegen laesst.
Hallo Marion,
wie von Eckerhard schon gesagt, es ist kein
Drag and Drop.

Probiers mal so:

Private Declare Function FindWindow Lib "user32" _
Alias "FindWindowA" (ByVal lpClassName As String, _
ByVal lpWindowName As String) As Long
Private Declare Function SetWindowLong Lib "user32" _
Alias "SetWindowLongA" (ByVal hwnd As Long, _
ByVal nIndex As Long, ByVal dwNewLong As Long) _
As Long
Private Const GWL_STYLE = (-16)
Private Const WS_DLGFRAME = &H400000

Private Sub cmbSchließen_Click()
Me.Hide
End Sub

Private Sub UserForm_Initialize()
NoCloseReplace
End Sub

Sub NoCloseReplace()
Dim Hauptfensternummer As Long
Hauptfensternummer = FindWindow("ThunderXFrame", _
Me.Caption)
SetWindowLong Hauptfensternummer, GWL_STYLE, _
WS_DLGFRAME
End Sub

Da aber auch das Kreuz zum Schließen weg ist, musst du
einen Button zum Schließen einfügen. Ich habe ihn cmbSchließen
genannt.

MfG
Michael


Marion und Andreas Wieg

unread,
Dec 11, 2000, 5:48:03 PM12/11/00
to
Ein *Super Tipp*
Vielen Dank.
--
MfG

Marion und Andreas Wieg
DAMF...@t-online.de

Ammersbek bei Hamburg
Germany

"Michael Schwimmer" <Schw...@t-online.de> schrieb im Newsbeitrag
news:910jts$n1f$06$1...@news.t-online.com........


0 new messages