vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 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

ActiveX-Programmierung
User Control Default Property 
Autor: WoCo
Datum: 05.08.11 00:20

-( Hallo,

ich habe ein User Control mit eine Textbox in VB6 erstellt.

Normalerweise kann ein Text einer Textbox mit Text1="Hallo"
zugewiesen werden.

Bei dem User Control muß man aber Text1.text="Hallo" angeben,
ansonsten kommt die Fehlermeldung:

Objekt unterstützt diese Eigenschaft oder Methode nicht.

Kann einer mir vieleicht weiterhelfen.

Danke:
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: User Control Default Property 
Autor: Dirk
Datum: 05.08.11 08:27

Gerade mal getestet
Private Sub UserControl_Initialize()
  Text1 = "Test"
End Sub
klappt bei mir einwandfrei. Von daher gehe ich davon aus, dass Informationen fehlen um dein Problem zu verstehen.

Gruß
Dirk

--
?Get it right the first time

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: User Control Default Property 
Autor: WoCo
Datum: 05.08.11 12:38

Hallo Dirk,
danke für die schnelle Antwort.

Mit der Einstellung

Text1 = "Test"

kann ich einen Default Text in der Textbox definieren.

Das ist aber nicht mein Problem.

Ich versuche einmal zu erklären wo mein Problem ist.
Mein OCX heißt zum Beispiel MyTextBox.ocx
Dieses OCX kommt nun in ein Project.
Das Control setze ich auf eine Form.
Der Name des Contols lautet txtMyTextbox

Um nun eine Text in das Control zu schreiben nutze ich das Propertie [u]Text.

txtMyTextbox.text="Hallo"

Wenn ich nun aber die Textbox ohne das Propertie anzugeben füllen möchte,

txtMyTextbox="Hallo"

kommt die Fehlermeldung,

Objekt unterstützt diese Eigenschaft oder Methode nicht

Dies geht aber mit der TextBox von VB6.

Gruß
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: User Control Default Property 
Autor: Dirk
Datum: 05.08.11 12:49

Füge deinem Control folgendes hinzu:
Public Property Get Text() As String
  Text = txt1 'oder wie deine TextBox heißt
End Property
 
Public Property Let Text(rhs As String)
  txt1 = rhs 'oder wie deine TextBox heißt
End Property
Gehe in das Menü "Tools-->Procedure Attributes" (weiß nicht genau, wie das deutsche Menü heißt). Wähle "Text" aus. Klicke den Button "Advanced" (oder so) und wähle dort unter "Procedure ID" "Default" aus.

Damit sollte es klappen.

Gruß
Dirk

--
?Get it right the first time

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: User Control Default Property 
Autor: Manfred X
Datum: 05.08.11 12:52

Hallo!

Dein UserControl ist aber keine Textbox,
(sondern dieses Control enthält eine Textbox??).
Ist die Textbox öffentlich kannst Du per
ucname.textboxname = "ssss" die Defprop der TB nutzen
(so weit ich erinnere - VB6 ist seeehr lange her).

Die Nutzung von DefaultProps ist nicht zu empfehlen.
Falls Du mal auf eine frische VB-Version umsteigst,
ist das ohnehin nicht mehr möglich.

MfG
Manfred
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: User Control Default Property 
Autor: WoCo
Datum: 05.08.11 16:44

Hallo Dirk,

D A N K E...

es funktioniert.

Das hätte ich nie gefunden.

Gruß

Wolfgang
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