Schliesskreuz bei UserForm entfernen

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

Betrifft: Schliesskreuz bei UserForm entfernen
von: Holger Wächter
Geschrieben am: 17.03.2005 16:10:46
Hallo,
gibt es eine Möglichkeit das Schliesskreuz in der Userform nicht mit anzeigen zu lassen?
Danke schon mal
MfG
Holger Wächter

Bild

Betrifft: AW: Schliesskreuz bei UserForm entfernen
von: u_
Geschrieben am: 17.03.2005 16:26:03
Hallo,
ziemlich kompliziert soviel ich weiß.
Einfacher ist es, das Kreuz außer Gefecht zu setzen.

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
  If CloseMode = False Then Cancel = True
End Sub

Damit wird geprüft, ob die UF per Code geschlossen wird oder nicht. Wenn nicht, bleibt sie offen.
Gruß
Bild

Betrifft: AW: Schliesskreuz bei UserForm entfernen
von: K.Rola
Geschrieben am: 17.03.2005 16:26:32
Hallo,
'-----------------------------------------------------------------------------------------------------------------------------------------------------
'In ein Standardmodul
'-----------------------------------------------------------------------------------------------------------------------------------------------------
Option Explicit
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Const WS_MAXIMIZEBOX = &H10000
Const GWL_STYLE = (-16)
Sub Kreuz_weg(objUF As Object)
Dim hWnd As Long, lStyle As Long
Select Case Int(Val(Application.Version))
  Case 8
    hWnd = FindWindow("ThunderXFrame", objUF.Caption)
  Case 9 To 11
    hWnd = FindWindow("ThunderDFrame", objUF.Caption)
End Select
lStyle = GetWindowLong(hWnd, 0)
SetWindowLong hWnd, GWL_STYLE, lStyle Or WS_MAXIMIZEBOX
End Sub
'-----------------------------------------------------------------------------------------------------------------------------------------------------
'Ins Modul des userforms
'-----------------------------------------------------------------------------------------------------------------------------------------------------
Private Sub UserForm_Initialize()
Call Kreuz_weg(Me)
End Sub

Gruß K.Rola

Der Fleiß ist die Wurzel aller Häßlichkeit.

Oscar Wilde


Bild

Betrifft: AW: Schliesskreuz bei UserForm entfernen
von: Holger Wächter
Geschrieben am: 17.03.2005 16:50:15
Vielen dank an euch beiden.
Ihr habt mir sehr geholfen
MfG
Holger Wächter
Bild

Betrifft: AW: Schliesskreuz bei UserForm entfernen
von: Nepumuk
Geschrieben am: 17.03.2005 17:39:34
Liebste K.Rola,
haben die ab XL2000 wirklich alle den selben Klassennamen "ThunderDFrame" ?
Ich habe extra eine kleine Routine geschrieben um den zu ermitteln. Das hätte ich mir dann sparen können.
Gruß
Nepumuk
Bild

Betrifft: AW: Schliesskreuz bei UserForm entfernen
von: K.Rola
Geschrieben am: 17.03.2005 18:54:06
Hi Nepumuk,
jetzt bin ich etwas verunsichert, da ich auf dem PC hier nur E 2002 habe und es nicht
testen kann, aber eigentlich glaube ich zu wissen, dass es so ist.

Gruß K.Rola

Der Fleiß ist die Wurzel aller Häßlichkeit.

Oscar Wilde


Bild

Betrifft: AW: @Nepumuk
von: Harry
Geschrieben am: 17.03.2005 20:44:33
Hi Nepumuk,
habe Deine Routine ebenfalls ausprobiert in Excel 2002 - es liefert mir genauso den selben Klassennamen "ThunderDFrame" .
Gruss Harry
Bild

Betrifft: AW: @Nepumuk
von: Nepumuk
Geschrieben am: 17.03.2005 22:53:20
Hallo Harry,
Danke für die Info. Damit sind also alle Versionen ab XL2000 gleich.
Gruß
Nepumuk
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Schliesskreuz bei UserForm entfernen"