Zum Inhalt springen

VB.NET: dynamische Controls mit Timern


Empfohlene Beiträge

Geschrieben (bearbeitet)

Hallo,

ich habe bei uns im Haus die Stelle gewechselt und fummle mich nach 1,5 Jahren SAP nun in VB.NET ein. Momentan bastel ich mir kleine Übungsprogramme um einfach wieder das Feeling dafür zu bekomme. Ich stehe nun aber vor einem Problem:

Ich erstelle dynamisch zur Laufzeit eine undefinierte Anzahl Label auf einer Form. Diese Label sollen sich auf bestimmten Bahnen bewegen (links nach rechts, oben nach unten etc). Nun bräuchte ich ja für jedes erzeugte Label einen Timer. Dass ich die Timer ebenso wie die Label dynamisch erzeugen kann weiß ich, aber was mache ich mit dem Tick-Event? Dort frage ich auch die Positionen etc ab und steuere dementsprechend die Label. Ich steh da grade auf dem Schlauch. Kann mir jemand einen Denkanstoß geben?

Aline

Edit: Jaja, den Text an sich hab ich kontrolliert, aber die Überschirft nich... Kann mal bitte ein Mod den Buchstabensalat im Wort "dynamische" korrigieren?

Bearbeitet von aline234
Doofheit...
Geschrieben

hm also irgendwie kapier ich das grad nich so ganz...

        lbl_auto = New Windows.Forms.Label


        With lbl_auto

            .Location = New Drawing.Point(xpos, ypos)

            .Width = 10

            .Height = 10

            .BorderStyle = BorderStyle.FixedSingle

            .Name = CType(anzahl, String)

        End With


        Me.Controls.Add(lbl_auto)

so erstelle ich immer ein neues label (bei button.Click)

momentan habe ich einen timer, in dem ich die position eines labels verändere. wie kann ich denn da jetzt die verschiedenen label unterscheiden? ich weiß ja nicht, wie viele es insgesamt werden.

Geschrieben

ich muss also die collection durchschleifen und bei jedem label herausfinden, in welche richtung es eigentlich gehen soll und dann dementsprechend den kurs berechnen. richtig so? dann müsste ich ja dem label eine neue eigenschaft "richtung" oder sowas geben. dafür müsste ich ja mein eigenes label control anlegen... :confused: geht das nich auch irgendwie einfacher?

Geschrieben

Wenn du das nicht anhand irgendeiner Eigenschaft des Labels sehen kannst könntest du zum Beispiel ienfach eine Klasse erstellen die das Label und die Richtung (und alle weiteren benötigten Infos) enthält und diese dann in der Collection speichern.

Also in C# wäre das so in der Art:


enum Direction { Top, Right, Down, Left };
class LabelInfo
{
public Label Label { get; set; }
public Direction Direction { get; set; }
}

List<LabelInfo> Labels = new List<LabelInfo>();
[/PHP]

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...