vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

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

Visual-Basic Einsteiger
Steuerelemente per String aufrufen 
Autor: Werner Friedrich
Datum: 06.11.22 14:36

Hallo,
sorry, ich habe nach ca. 10 Jahren mal wieder Zeit und Lust ein wenig an meinen alten Projekten herumzubasteln. Bin jetzt 72 Jahre und war immer Autodidakt, deshalb vielleicht sehr naive Fragen.

Frage: Ich hole Namen von Steuerelementen (z.B. "Textbox1) aus einem ADO-Recordset. Die Namen haben natürlich das String-Format. Aus Steuerelementen mit diesen Namen möchte ich jetzt deren Eigenschaften abfragen z.B. "L = ctl.Left" .
Wie spreche ich das Steuerelement an, wenn ich dessen Namen nur als String habe.

Dim ctl As Control
Dim Strg As String
Dim L As Long

Strg = rs.Fields("Name").Value 'Der Name ist z.B. "Textbox1"


wie spreche ich jetzt das Control mit dem Namen Strg an?

L = ctl.Left

funktioniert natürlich nicht weil der Name im Datensatz ein String ist.

Was muss ich tun um die Controls mit dem String aus der Datenbank anzusprechen?

Danke für eure Bemühungen im voraus

Gruß Werner
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Steuerelemente per String aufrufen 
Autor: ModeratorDieter (Moderator)
Datum: 07.11.22 08:33

Das geht über die Controls-Auflistung der jeweiligen Form, bspw.:
MsgBox Me.Controls("Text1").Left
bzw.:
L = Me.Controls(Strg).Left

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Steuerelemente per String aufrufen 
Autor: Werner Friedrich
Datum: 07.11.22 12:17

Hallo,


DANKE, klappt wunderbar.
frm" ist die Form, rsSysSize das Recordset Rel ist das Verhältnis der Bildschirmauflösung
Für jedes Control ist ein Datensatz in der DB mit allen Größen-Eigenschaften

So ungefähr mein Loop beim Starten des Projektes:

Do While rsSysSize.EOF <> True
ctlName = rsSysSize.Fields("Name").Value
frm.Controls(ctlName).Left = rsSysSize.Fields("Left").Value * Relx
frm.Controls(ctlName).Top = rsSysSize.Fields("Top").Value * Rely
frm.Controls(ctlName).Width = rsSysSize.Fields("Width").Value * Relx
frm.Controls(ctlName).Height = rsSysSize.Fields("height").Value * Rely
frm.Controls(ctlName).FontSize = rsSysSize.Fields("Fontsize").Value * Rely
rsSysSize.MoveNext
Loop

Grüße vom Bodensee

Werner
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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-2024 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