frmLogin immer im Hintergrund

Hallo Leute,

ich habe mir mit VB ein Form1 erstellt. Nun möchte ich einen Login machen. Dazu habe ich das Formular von VB genommen. In Form1 schrieb ich:

Private Sub MDIForm_Load()
frmLogin.Show
End Sub

Ich wollte damit erreichen daß das Formular direkt beim starten des Programms geladen und auch in den Vordergrund gerückt wird. Allerdings steht das Login Form immer hinter dem Form1 und nur wenn ich es aktiviere kommt es nach vorne.

Wie kann ich das Feld in den Vordergrund bringen?

Danke!!!

Hi Björn!

So wie’s aussieht, arbeitest Du mit einem MDI-Form. Am klugsten wäre ein Splash bzw. Login aus einer globalen Prozedur aus zu öffenen und nicht aus dem Load-Event eines anderen Forms.

Beispiel:

Modul modGlobal:

Public Sub Main()
 frmLogin.Show
End Sub

Dann solltest Du in den Projekteigenschaften das Startobject auf „Sub Main“ stellen. Im frmLogin gibt’s dann 2 Textboxen (für User/Pass) und 2 CommandButtons.

Private Sub cmdLogin\_Click()
 If txtUser.Text = "Admin" And txtPass.Text = "xyz" Then
 frmMain.Show
 Me.Close
 Else
 MsgBox "Falsches Passwort"
 End If
End Sub

…oder so ähnlich.

VG, Stefan.

Erstmal danke für deine super Hilfe.
Ich habe nun bei dem MIDIfrm folgendes hinzugefügt:

Private Sub Main()
frmLogin.Show
End Sub

Dann habe ich bei dem MIDIfrm die Eigenschaften für Projekt1 ausgewählt und habe dort Startobjekt. Sub Main ausgeählt.
Allerdings kommt dann „Startobjekt oder Sub Main erforderlich“.
Was ist das?

Danke Gruß Björn.

Die Procedure Main() muss in einem globalen Modul stehen.

Projekt/Modul hinzufügen. Bennene es modGlobal und kopiere dann die Sub Main() aus MIDIfrm nach modGlobal.

Übrigens: Es gibt da so eine hilfreiche Richtlinie, wie man Variablen, Objekte u.ä. bennent - frmXYZ für Forms, modXYZ für Module usw. Mehr unter:

http://msdn.microsoft.com/library/en-us/vbcon98/html…

VG, Stefan.

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]