Programmieren - alles kontrollieren 4.941 Themen, 20.708 Beiträge

Zur Laufzeit Objekte erstellen !!! ???

Milch / 7 Antworten / Baumansicht Nickles

Also ich will auf meiner komplett leeren Form per Code zur Laufzeit Objekte erstellen...(Winsock am meisten) Dass ich das mit DIM oder SET und NEW versuchen muss, weiß ich...es funktioniert aber noch nicht !!! Wie schaffe ich das ?????

bei Antwort benachrichtigen
thomas woelfer Milch „Zur Laufzeit Objekte erstellen !!! ???“
Optionen

ich verstehe deine frage nicht. was hat winsock mit forms zu tun. was fuer forms meinst du? (auf html seite, visual baisc forms....?). was fuer objekte meinst du? - du wirst das wohl ein bisschen klarer formulieren muessen :)

WM_THX
thomas woelfer

this posting contains no tpyos.
bei Antwort benachrichtigen
Milch Nachtrag zu: „Zur Laufzeit Objekte erstellen !!! ???“
Optionen

ich meine normale vb6-forms, auf die die objekte, wie z.b. textfelder, lists oder scrollbars drauf sollen... und dort will ich per code winsock objekte erstellen... von mir aus soll eins drauf sein, was er verdoppelt... ich habe vor ein programm zu erstellen, in dem ein winsock-objekt einen port mit listen überprüft und dann aber ein anderer "winsock2.accept requestID" ihn annimmt, damit der port für den nächsten offen bleibt... aber ich brauche von den zweiten unbestimmt viele !!!

bei Antwort benachrichtigen
thomas woelfer Milch „ich meine normale vb6-forms, auf die die objekte, wie z.b. textfelder, lists...“
Optionen

das sollte in vb doch einfach mit CreateObject() gehen...

WM_HOPETHISHELPS
thomas woelfer

this posting contains no tpyos.
bei Antwort benachrichtigen
Dreamforger Milch „ich meine normale vb6-forms, auf die die objekte, wie z.b. textfelder, lists...“
Optionen

Wenn ich dich richtig verstehe ist das ein fall für eine verkettete Liste. Frag mich jetzt aber bitte nicht wie man sowas in Basic implementiert

bei Antwort benachrichtigen
(Anonym) Milch „Zur Laufzeit Objekte erstellen !!! ???“
Optionen

hi,

ich verstehe dein Problem.
Also, als erstes musst du die Eigenschaft Index des Steuerelements (zB Winsock) auf 0 setzen. Dann kannst du in einer beliebigen Prozedur deines Programms schreiben:

Static i As Integer
i = i + 1
Load Steuerelementname(i) 'Erzeugung des neuen Steuerlements

Danach hat das Steuerelement die gleichen Eigenschaften gesetzt wie Steuerelement(0) mit der Ausnahme, das die Visible-Eigenschaft auf 0 gesetzt ist. Also kannst du zB weiter schreiben:

Steuerelementname(i).Left = NewLeft 'Damit das Steuerlement nicht über dem alten gezeichnet wird.
Steuerelementname(i).Top = NewTop

Steuerelementname(i).Visible = True 'Nach setzen der neuen Eigenschaften Steuerelement sichtbar machen

Wenn du das Steuerelement nicht mehr brauchst kannst du es einfach mit Unload löschen

Unload Steuerelement(i)

Dann verschwindet es wieder von Formular.

Das ganze funktioniert also ähnlich wie Arrays. Experimentiere einfach mal damit rum. Wenn du noch fragen hast, dann poste einfach nochmal.

Tobias

bei Antwort benachrichtigen
Milch (Anonym) „hi, ich verstehe dein Problem. Also, als erstes musst du die Eigenschaft Index...“
Optionen

SSSUUUPPPEEERRR VVVVIIIEEELLLEEENNN DDAANNNKK !!!

Danke Danke Danke !

Es funktioniert !!!

Supervielen Dank !

du kannst wahrscheinlich das ergebnis später bei www.milchworld.de sehen ! (sorry aber die webseite ist auf meinem rechner und der ist nicht immer online...)

Milch

bei Antwort benachrichtigen
Waterfall Milch „Zur Laufzeit Objekte erstellen !!! ???“
Optionen

Was auch noch möglich ist (zusätzlich zu den schon geposteten Möglich keiten): Man kann mit der API-Funktion "CreateWindowEx" verschiedene Fenster erzeugen, was eine ganze Reihe von Möglichkeiten eröffnet. Dies hier zu erklären wäre recht mühsam, wer mehr wissen möchte, soll mir eine eMail schreiben: rolfhub@web.de

bei Antwort benachrichtigen