vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 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
erstellte Objekte ansprechen 
Autor: Trochilon
Datum: 27.08.12 21:01

habe jetzt durch eure hilfe einiges an code schreiben können danke erstmal hierfür. leider konnte ich in meinem vorher erstellten thread keine nachrichten mehr schreiben ich hoffe es ist nich so schlimm, dass ich extra nochmal n thema dafür aufmache. ich entschuldige mich dafür auch. ich hab jetzt noch eine frage. am besten erklär ich das anhand meines codes was ich meine:

Dim auto1(5) As Image
 
Private Sub Form_Load()
i1 = 0
autokonstrukt_Timer.intervall=1000
auto1_fahren.intervall=1000
auto1_fahren.Enabled = false
End Sub
 
Public Sub autokonstrukt_Timer()
 
    'hier wird eine zufällige Zahl erstellt. Sobald die Zufallszahl = 1,2,3 
    ' oder 4 wird,
    'dann wird ein Auto auf seiner zugeteilten Position erstellt
    Randomize
    R = Int(Rnd(1) * 4) + 1
 
    If R = 1 Then
        i1 = i1 + 1
        'Imagebox der Form1 hinzufügen
        Set auto1(i1) = Me.Controls.Add("VB.image", "auto1" & i1)
        With auto1(i1)
            .Move 10080, 240, 0, 0                          'Position bestimmen
            .Visible = True                                 'Imagebox 
            ' "sichtbar" machen
            .Picture = ImageList1.ListImages(1).Picture     'Bild einfügen
        End With
        auto1_fahren.Enabled = True
End If
 
end sub
 
Private Sub auto1_fahren_Timer()
 
 
    If i1 = 1 Then
 
        auto1(1).Top = auto1(1).Top + 50
 
    ElseIf i1 = 2 Then
        auto1(2).Top = auto1(2).Top + 50
    ElseIf auto1(i1).Visible = True Then
        auto1(3).Top = auto1(3).Top + 50
    ElseIf auto1(i1).Index = 4 Then
        auto1(4).Top = auto1(4).Top + 50
    ElseIf auto1(i1).Index = 5 Then
        auto1(5).Top = auto1(5).Top + 50
    End If
End Sub
Mein Problem besteht momentan darin, wie ich im auto1_fahren_Timer meine bereits erstellten Objekte so ansprechen, dass sie sich bei dem runterbewegen auch weiterhin bewegen wenn ein neues Auto erstellt wird. Mir ist klar, dass es momentan nich so funzt, da sich i1 nach dem erstellen eines neuen Autos auch ändert und damit sich auch mein zuvor erstelltes Objekt nicht mehr bewegt.

irgendwie muss ich also versuchen dass ich mein zuvor erstelltes objekt explizit ansprechen kann, aber wie ? ich dachte mir irgendwie über den index aber der ändert sich ja auch ständig. ich hatte mir überlegt, es so zu machen, das es egal ist was für ein index meine autos haben, also egal welchen wert i1 hat die erstellten objekte sollen sich bewegen, aber dann ist noch kein Objekt erstellt und er mag auch nich.

für die weitere hilfe wäre ich sehr dankbar. an sich stellt mein autokonstrukt wirklihc hervoragend meine objekte her nur haperts grad an der bewegung. ich befürchte nur, dass man die Objekte nich direkt ansprechen kann, ohne sie vorher alle erstellt zu haben

gruß
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
erstellte Objekte ansprechen1.337Trochilon27.08.12 21:01
Re: erstellte Objekte ansprechen623Trochilon28.08.12 01:20
Re: erstellte Objekte ansprechen733Zardoz28.08.12 03:34

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