Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Und gleich noch ein Problem ... ;)

Ich möchte beim Starten einer Datenbank ein Formular laden, in dem ein Ladebalken erscheint. Sobald dieser abgelaufen ist, soll das Formular geschlossen und das Hauptmenü der Datenbank aufgerufen werden.

Das Starten eines Formulars is ja soweit auch kein Problem. Auch das Öffnen des Hauptmenüs funktioniert reibungslos.

Aber wenn ich ihm jetzt sage, er soll den Laufbalken aufbauen, wird mir das Formular selber erst garnicht angezeigt.

Der Code beim Aufruf des Formulars ist folgender :


Private Sub Form_Load()


   Dim i As Long


   'Balken beim Start des Formulars

   Me.Bar.Width = 0

   'Balkenfarbe

   Me.Bar.BackColor = 222222


   'Schleife zum Balkenaufbau

   For i = 0 To 200

        i = i + 1

        Me.Bar.Width = i

        Warten 1

        DoEvents

   Next i


   Docmd.Close

   DoCmd.OpenForm "001_Hauptmenü"


End Sub

Aber wie gesagt, wenn ich das Formular öffne, wird es mir nicht angezeigt.

Wenn ich dieses Warten 1 (bezieht sich auf ein Modul) auskommentiere, wird das Formular zwar geöffnet, aber der Effekt des wachsenden Laufbalkens ist nicht da.

Wer kann mir helfen, ich find meinen Denkfehler nicht ?

Moin,

auf Freeaccess findest du die Knowhow.mdb von Klaus Oberdalhoff mit unzähligen Beispielen für jeden Kram, unter anderem einem Fortschrittsbalken.

Beachte aber, dass es darauf ein Softwarepatent gibt ... *duck*

hth

Reinhold

wartest du bei dem fortschrittsbalken eigentlich auch auf etwas, oder macht das programm einfach nur pause? :D

s'Amstel

Reinhold

Ich weiß jetzt nicht genau, wieso du auf die KnowHow verweist. Diese DB hab ich bereits durchgegrast, und nicht gefunden, wonach ich suche.

Amstelchen

Es ist erstmal ne kleine grafische Spielerei. ... ;)

Ich möchte eine Datenbank erstellen, bei der am Anfang ein Infofenster geöffnet wird, ähnlich den Fenstern bei Word und Excel und so.

In diesem Fenster möchte ich am unteren Rand nen kleinen Ladebalken einbauen. Das Problem liegt wie gesagt darin, dass mir das Formular solange nicht angezeigt wird, wie die von mir erstellte for-schliefe läuft.

Danach arbeitet das Programm ordentlich weiter.

Hm ... wie ich mich kenne, hab ich da nur wieder nen kleinen Denkfehler im Script ... :D

Reinhold

Ich weiß jetzt nicht genau, wieso du auf die KnowHow verweist. Diese DB hab ich bereits durchgegrast, und nicht gefunden, wonach ich suche.

Du hast in der KnowHow.mdb keine Fortschrittsanzeige gefunden? :confused: Probiers mal bei Fielmann oder so ....

Reinhold

Ich brauch weder eine Brille, noch brauche ich Bemerkungen, die mir in keiner Weise weiter helfen.

Wie ich bereits sagte, habe ich in der KnowHow nicht das gefunden, was ich suche. Daher hab ich ja meine Frage hier im Forum gestellt.

Mag sein, du findest dort nur ein Prinzip, wie man so etwas machen kann. Du suchst offensichtlich eine fertige Lösung....

Viel Glück dabei.

Hm ... es geht mir hier nich darum, ne fertige Lösung für einen Laufbalken zu finden, dazu bastle ich selber viel zu gern an Quelltexten ... :D

Aber ich suche keinen Laufbalken für die Statusleiste, und alles, was ich in der KnowHow gefunden habe, handelte sich leider genau darum. Aber in dem Formular, in welches der Laufbalken eingebaut wird, wird die Statusleiste ausgeblendet.

Ich habe ein Rechteck am unteren Rand des Formulars eingebaut.

Dieses soll seine Größe entsprechend einem Wert ändern, welcher mittels einer Schleife im VBA-Code bis zu einer bestimmten Zahl hochgezählt wird.

So weit, so gut.

Das funktioniert ja auch.

Mein Problem ist jetzt nur ... mein Formular wird erst dann angezeigt, wenn die Schleifendurchläufe erledigt sind.

Meine Vorstellung geht aber dahin.

Beim Start der Access-DB soll dieses Formular geöffnet werden, nen kleiner Laufbalken soll sich darin aufbauen und sobald dieser Balken aufgebaut ist, soll dieses Formular geschlossen und das Hauptmenü aufgerufen werden.

Mag ja sein, das dieser Balken keinerlei andere Funktion hat, als die, seine Größe zu verändern, aber die Datenbank ist für meinen Arbeitgeber und son Infofenster am Anfang eines Programms lässt das ganze Teil doch ganz anders aussehen ... :floet:

Hallo

wenn ich deine Frage und die bisherigen Antworten richtig verstehe, willst Du erreichen, dass 2 Dinge parallel passieren:

a) deine DB/Applikation startet und gibt periodisch ihren Status in % an

B) eine Fortschrittsanzeige, die diesen %-Status darstellt.

Prinzipiell läuft das auf ein MultiThreading raus, was unter VB mit sehr viel Tricks und super VB-Kenntnissen machbar sein soll (vgl. "Hardcore VB"), unter VBA klappt sowas IMHO nicht.

Gruß Martin

Hm ... es geht mir hier nich darum, ne fertige Lösung für einen Laufbalken zu finden, dazu bastle ich selber viel zu gern an Quelltexten ... :D

Aber ich suche keinen Laufbalken für die Statusleiste, und alles, was ich in der KnowHow gefunden habe, handelte sich leider genau darum. Aber in dem Formular, in welches der Laufbalken eingebaut wird, wird die Statusleiste ausgeblendet.

Mehr denn je, du findest das in der knowhow.mdb (falls du die wenigstens schon gefunden hast). Das Formular heißt dort "frmTestStatusBox"

Ansonsten ist für mich hier Ende des Thread.

Reinhold

OK ... das hab ich dann wohl doch übersehen ... sorry

Aber das bedeutet ja nun wirklich nich, dass man dann gleich so einen Spruch in Richtung Fielmann loslassen muss.

Martin

Nich so ganz.

Der Ablauf soll nicht parallel sein. Erst soll das Formular mit dem Ladebalken geöffnet werden, und wenn das dann abgearbeitet ist, sprich wenn der Balken vollständig aufgebaut ist, soll dieses Form geschlossen und das nächste geöffnet werden.

so ... ich hab hier jetzt nochmal Verschiedenes durchgetestet.

Das Hauptproblem besteht für mich jetzt darin, dass das Programm zwar so abläuft, wie es soll, also die Schleife wird hochgezählt, der Balken wird auch aufgebaut ... aber das Formular selber wird erst dann aufgebaut, wenn alles abgearbeitet ist.

Ich möchte, dass sich das Formular öffnet, dann der Balken größer wird, und nicht umgekehrt.

Wer kann mir helfen ?????????????????????????????????????????????????

Wer kann mir helfen ?????????????????????????????????????????????????

ein fragezeichen hätte bei weitem gereicht, oder klemmt deine taste?

aber die Datenbank ist für meinen Arbeitgeber und son Infofenster am Anfang eines Programms lässt das ganze Teil doch ganz anders aussehen

ich bin nach wie vor der meinung, dass eine vernünftige anwendung nicht durch schickes layout, sondern durch eine stabile, durchdachte struktur und funktionalität überzeugt.

Ich möchte, dass sich das Formular öffnet, dann der Balken größer wird, und nicht umgekehrt.

du hast in einem Form_Load ein Close() und im anschluss daran ein OpenForm() drin. das ist AFAIR über ein startmakro (oder besser code, da makros generell "bäh" sind) besser - oder überhaupt erst - lösbar.

s'Amstel

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.