vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 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

Fortgeschrittene Programmierung
Re: Dynamische Objekte, Abfrage der Mousetasten. 
Autor: ManfredV
Datum: 10.07.10 10:10

Ah, Moment, ich glaube, ich sehe das Problem.
Du vergibst auch die Namen der Controls dynamisch mit dem rs!tName bei Set ZNRLabel = Form1.Controls.Add("vb.Label", rs!tName)

Das, so glaube ich, funktioniert nicht, denn der Name des Controls muss ja identisch sein mit dem Namen für die Ereignisprozedur - und dieser Name wird ja bereits zum Design-Zeitpunkt und nicht erst zur Laufzeit festgelegt. In meinem Beispiel ist der Name cmdExit und die Click-Ereignisprozedur heißt demzufolge cmdExit_Click.

Ich fürchte fast, so richtig lösbar ist Dein Problem mit meiner Methode dann doch nicht. Du könntest zwar ein dynamisches Steuerelementfeld beispielsweise mit Private cmdExit() As sevCommand3.Command erstellen, aber das funktioniert leider nur ohne WithEvents - und gerade auf die Eregnisse kommt es Dir ja an.
Der einzige Weg, den ich im Moment sehe ist, einen Haufen von unterschiedlichen Controls im voraus zu deklarieren und dann zur Laufzeit zu entscheiden, welche Du brauchst.

Um meinem Beispiel zu folgen sähe das dann etwa so aus:
Private mlControlCount As Long
 
Private cmdExit1() As sevCommand3.Command
Private cmdExit2() As sevCommand3.Command
..
Private cmdExit99() As sevCommand3.Command
 
Private Sub cmdExit1_Click()
End Sub
Private Sub cmdExit2_Click()
End Sub
..
Private Sub cmdExit99_Click()
End Sub
 
Private Sub InitControl()
     mlControlCount = 1
     Set cmdExit1 = Me.Controls.Add("sevCommand3.Command", "cmdExit" & cstr( _
       mlControlCount))
     mlControlCount = mlControlCount + 1
     Set cmdExit2 = Me.Controls.Add("sevCommand3.Command", "cmdExit" & cstr( _
       mlControlCount))
     mlControlCount = mlControlCount + 1
     ..
     Set cmdExit99 = Me.Controls.Add("sevCommand3.Command", "cmdExit" & cstr( _
       mlControlCount))
     mlControlCount = mlControlCount + 1
End Sub
Aber wirklich elegant ist das natürlich nicht.

Weil das so ist, würde ich an Deiner Stelle das grundsätzliche Design der Anwendung in Frage stellen. Möglicherweise ist der Weg über Steuerelemente nicht der Weg, den Du gehen solltest.

Du sagst, Du möchtest ein Gleisbild darstellen anhand verschiedener Objekte bestimmter Typen (Signale, Weichen. Gleismodule). Du musst das natürlich nicht so machen, aber mein persönlicher Ansatz wäre es vermutlich, diese Typen in Klassen abzubilden und sie in Collections zusammenzufassen. Die Kommunikation zwischen den Objekten würde über deren Methoden und Eigenschaften und über in den Klassen definierte Ereignissen laufen. Das ganze hätte zunächst mal den Vorteil, dass ich die Struktur des Gleisbildes abbilden kann, ohne von irgendwelchen Steuerelementen auf der Oberfläche abhängig zu sein.
Aber das ist natürlich nur ins Blaue geredet, ich kenne die Struktur Deine Anwendung ja überhaupt nicht. Du scheinst ja schon recht weit zu sein damit.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Dynamische Objekte, Abfrage der Mousetasten.2.277Paulix105.07.10 12:35
Re: Dynamische Objekte, Abfrage der Mousetasten.1.650Zardoz05.07.10 14:22
Re: Dynamische Objekte, Abfrage der Mousetasten.1.689Paulix105.07.10 14:30
Re: Dynamische Objekte, Abfrage der Mousetasten.1.671GBO05.07.10 14:46
Re: Dynamische Objekte, Abfrage der Mousetasten.1.668Paulix106.07.10 11:01
Re: Dynamische Objekte, Abfrage der Mousetasten.1.641ManfredV08.07.10 22:56
Re: Dynamische Objekte, Abfrage der Mousetasten.1.664Paulix109.07.10 10:17
Re: Dynamische Objekte, Abfrage der Mousetasten.1.616Paulix109.07.10 12:54
Re: Dynamische Objekte, Abfrage der Mousetasten.1.641ManfredV09.07.10 10:33
Re: Dynamische Objekte, Abfrage der Mousetasten.1.662Paulix109.07.10 13:02
Re: Dynamische Objekte, Abfrage der Mousetasten.1.639ManfredV09.07.10 13:28
Re: Dynamische Objekte, Abfrage der Mousetasten.1.591Paulix109.07.10 14:40
Re: Dynamische Objekte, Abfrage der Mousetasten.1.793ManfredV09.07.10 20:49
Re: Dynamische Objekte, Abfrage der Mousetasten.1.652Paulix110.07.10 10:10
Re: Dynamische Objekte, Abfrage der Mousetasten.1.628ManfredV10.07.10 10:10
Re: Dynamische Objekte, Abfrage der Mousetasten.1.640Paulix110.07.10 10:41
Re: Dynamische Objekte, Abfrage der Mousetasten.1.781ManfredV10.07.10 10:15
Re: Dynamische Objekte, Abfrage der Mousetasten.1.642GBO10.07.10 10:33
Re: Dynamische Objekte, Abfrage der Mousetasten.1.696Paulix110.07.10 10:43
Re: Dynamische Objekte, Abfrage der Mousetasten.1.805ManfredV10.07.10 14:41
Re: Dynamische Objekte, Abfrage der Mousetasten.1.601Paulix110.07.10 16:13

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