vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 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

VB.NET - Ein- und Umsteiger
von Modul auf Label in Form zugreifen? VB2003 
Autor: Martin Mörtl
Datum: 30.10.06 07:24

Hallo

Ich glaub ich bin jetzt ganz dumm.

Ich habe ein Form1 und auf dieser liegt das Label1. Aus einem Modul möchte ich den Text des Labels ändern.
' VB6 Form1.Label1.Caption="Neuer Text"
Ich habe Label1 auf "Modifiers = Puplic" gestellt. Aber wie gehts unter Vb2003?

Vielen Dank für die Hilfe.
Gruß Martin
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: von Modul auf Label in Form zugreifen? VB2003 
Autor: Moderatorralf_oop (Moderator)
Datum: 30.10.06 08:27

Du brauchst eine Instanz auf deine Form1, denn unter VB2002 und VB2003 gibt es keine Defaultinstanzen, unter VB2005 gibt es sie über My.Forms.

Erstelle z.B. eine Eigenschaft/Feld im Modul, welche vom Typ Form1 ist und weise ihr einen Wert zu. Hier ein kleines Beispiel:

Public Module MyModule
   Public MainForm As Form1
 
   Public Sub SetLabelText(ByVal text As String)
      MainForm.Label1.Text = text
   End Sub
 
   ' ...
End Module
Im Load-Ereignis deiner Form1:

MyModule.MainForm = Me

Ralf

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: von Modul auf Label in Form zugreifen? VB2003 
Autor: vbtricks
Datum: 30.10.06 08:27

Salut,

das geht erst in VB2005 wieder so. Unter VB2003 musst du explizit eine Instanz der Form erstellen. Du kannst das ganze relativ einfach lösen, indem du in dem Modul eine Public-Variable vom Typ Form1 erstellst, diese aus dem Konstruktor von Form1 mittels
MeinModul.FormReferenz = Me
setzt und aus dem Modul kannst du dann mittels
FormReferenz.Label1.Text = "Neuer Text"
darauf zugreifen.


Stefan

Web: http://www.vbtricks.de.vu/

VBTricks.de.vu. Meine Webseite zu VB und anderen Programmiersprachen. Verschiedene fortgeschrittene OCXe und komplette Projekte sind im Sourcecode verf?gbar.

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: von Modul auf Label in Form zugreifen? VB2003 
Autor: ModeratorFZelle (Moderator)
Datum: 30.10.06 11:04

Ständig kommt immer wieder diese ziemlich schlechte und fehleranfällige
Variante, die schon unter VB6 zu schlecht wartbarem Code geführt hat.

Warum versucht Ihr nicht mal wenigstens die Grundlagen der OOP anzuwenden?

NIEMALS AUF STEUERELEMENTE EINER FORM VON AUSSEN ZUGREIFEN.
Wenn dann nur über Public Properties, alles andere ist schlechter Code.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: von Modul auf Label in Form zugreifen? VB2003 
Autor: Martin Mörtl
Datum: 30.10.06 11:55

Wie schaut das dann etwa aus?
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: von Modul auf Label in Form zugreifen? VB2003 
Autor: ModeratorFZelle (Moderator)
Datum: 30.10.06 12:28

Nun, wenn Dir der Begriff Property nichts sagt, solltest Du die Grundlagen von VB.NET erlesen.
Das ist so viel , das es ein Forum nicht leisten kann.

Aber dieses Thema habe ich hier schon sooft erklärt, das Du durch die Suche
bestimmt fündig wirst.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: von Modul auf Label in Form zugreifen? VB2003 
Autor: Snoopy
Datum: 30.10.06 13:44

Das schreit doch wieder nach diesem Thread.
Der sollte nicht versumpfen

Gruß

Gru?
---------------------------------------------------
Snoopy sagt - vb@rchiv find ich gut...
Schon gesehen? OSMMapViewer V2 Control

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