vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Feste Form mit Schiebetüren.. 
Autor: Caron
Datum: 27.06.09 11:58

Also ich habe mir den Code nochmal angesehen und ein wenig überarbeitet.

Ich verwende nun 2 Timer. Einen für die rechte und einen für die linke Tüerform.

Die Türformen enthalten nun keinen Code mehr. In der Hauptform sieht der Code so aus:

Du braucht auf der Hauptform wie schon erwähnt 2 Timer (Timer1) (Timer2)
und natürlich auch einen Button (Command1)


Dann kommt folgender Code in die Hauptform:

Public stopperrechts As Integer
Public stopperlinks As Integer
 
Private Sub Command1_Click()
 
 
'Türlinks wird geladen
frm_tuerrechts.Show
'Die Höhe der Türrechtsform wird mit der Hauptform abgeglichen
frm_tuerrechts.Height = frm_mitte.Height
'Die rechte Kante von Tüerrechts wird genau auf die rechte Kante der Hauptform 
' gesetzt
frm_tuerrechts.Left = (frm_mitte.Left + frm_mitte.Width) - frm_tuerrechts.Width
'Die obere Hande der Türrechtsform wird auf die obere Kante der Hauptform 
' gesetzt
frm_tuerrechts.Top = frm_mitte.Top
 
 
 
'Türrechts wird geladen
frm_tuerlinks.Show
'Die Höhe der Türlinksform wird mit der Hauptform abgeglichen
frm_tuerlinks.Height = frm_mitte.Height
'Die obere Kante der Türlinksform wird auf die Obere Kante der Hauptform gesetzt
frm_tuerlinks.Top = frm_mitte.Top
'Die linke Kante der Türlinksform wird auf die Linke Kante der Hauptform gesetzt
frm_tuerlinks.Left = frm_mitte.Left
 
'Die Hauptform wird geladen
frm_mitte.Show
 
'Der rechte Stopper wird auf die Rechte Kante der Hauptform gesetzt
'Die -20 sind eine Sicherung. Manchmal passiert es dann, dass kurz ein Spalt 
' zwischen 
'Hauptform und Türform zu sehen ist da ich den Stopper hier um 20 Twips weiter 
' rein setze 
'kann das nicht mehr Passieren.
stopperrechts = frm_mitte.Left + frm_mitte.Width -20
'Der Linke Stopper wird auf eine Kante gesetzt die türlinksform hat wenn sie 
' voll ausgefahren ist
'Also von der Linken Kante der Hauptform minus der Breite der Türenform
stopperlinks = frm_mitte.Left - frm_tuerlinks.Width
 
'Die Timer werden auf ein Interval von 20 Millisekunden eingestellt
Timer1.Interval = 10
Timer2.Interval = 10
 
'Die Timer werden gestartet
Timer1.Enabled = True
Timer2.Enabled = True
End Sub
 
 
 
Private Sub Timer1_Timer()
If frm_tuerrechts.Left >= stopperrechts Then
    'Wenn die linke Kante der Türform den Stopper erreicht hat oder diesen 
    ' überschreitet
    'Wird die linke Kante der Türform genau auf den Stopper gesetzt
    frm_tuerrechts.Left = stopperrechts
    'Der Timer wird wieder deaktiviert
    Timer1.Enabled = False
Else
    'Wenn die linke Kante der Türform den Stopper noch nicht erreicht hat wird 
    ' die Türform um
    '20 Twips weiter nach rechts geschoben
    frm_tuerrechts.Left = frm_tuerrechts.Left + 20
End If
End Sub
 
Private Sub Timer2_Timer()
If frm_tuerlinks.Left <= stopperlinks Then
    'Wenn die linke Kante der Türform den Stopper erreicht hat oder diesen 
    ' überschreitet
    'Wird die linke Kante der Türform genau auf den Stopper gesetzt
    frm_tuerlinks.Left = stopperlinks
    'Der Timer wird wieder Deaktiviert
    Timer2.Enabled = False
Else
    'Wenn die rechte Kante der Türform den Stopper noch nicht erreicht hat wird 
    ' die Türform um
    '20 Twips weiter nach links geschoben
    frm_tuerlinks.Left = frm_tuerlinks.Left - 20
End If
End Sub
Ich habe den Code für dich außerdem noch genau auskommentiert sodass du sehen kannst was jede Zeile des Codes bewiren soll. Dann solltest du eigentlich in der lage sein den code so zu erweitern, dass sich die Türformen wieder schließen.

Wie simultan die beiden Türformen jetzt aufgehen hängt davon ab ob die Timer beide gleich schnell eingestellt sind (Ich hab sie nun beide auf 10 Millisekunden gestellt)

Ich hoffe ich hab deinen wunsch nun richtig verstanden^^

Beitrag wurde zuletzt am 27.06.09 um 12:05:24 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Feste Form mit Schiebetüren..1.179tsh200025.06.09 20:32
Re: Feste Form mit Schiebetüren..716D.Progs25.06.09 21:23
Re: Feste Form mit Schiebetüren..719Caron26.06.09 17:41
Re: Feste Form mit Schiebetüren..678tsh200026.06.09 21:07
Re: Feste Form mit Schiebetüren..701Caron27.06.09 11:58
Re: Feste Form mit Schiebetüren..674tsh200027.06.09 12:48
Re: Feste Form mit Schiebetüren..668Caron27.06.09 20:10
Re: Feste Form mit Schiebetüren..684tsh200027.06.09 21:09

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel