WTO Geschrieben 19. Januar 2003 Geschrieben 19. Januar 2003 Hi@ All, ich benötige ein Formular mit mehreren Comboxen welche Zeilenweise gruppiert sind. Da die Anzahl der Zeilen dynamisch sein muß wollte ich ein Controll Array benutzen. Aber irgendwie werden die dynamischen Comboboxen nicht angezeigt. Folgender Code müsste nach meinem Verständnis das Ergebnis erzielen aber leider werden die Comboboxen nicht angezeigt. Private Sub Form_Load() For i = 1 To 5 Load Frame1(i) Frame1(i).Top = Frame1(i - 1).Top + 730 Frame1(i).Visible = True Frame1(i).Caption = "frm" & i Load Option2(i) Option2(i).Top = Frame1(i).Top + 50 Option2(i).Left = 200 Option2(i).Caption = "opt" & i Set Option2(i).Container = Frame1(i) Option2(i).Visible = True ' ** Next End Sub ** Diese Eigenschaft wird warum auch immer nicht geändert steht also weiterhin auf "False". Deswegen denke ich das dort das Problem ist. vielleicht hat ja jemand eine Idee und kann Helfen... vielen Dank im voraus WTO Zitieren
Peregrin Geschrieben 20. Januar 2003 Geschrieben 20. Januar 2003 hi, das formular muss angezeigt sein, damit das visible = true wirkung zeigt. moeglichkeit1: im form.activate den code ausfuehren moeglichkeit2: im form.load als erstes ein me.show ausfuehren (ist eine ziemliche ferkelei...) hoffe geholfen zu haben Zitieren
WTO Geschrieben 20. Januar 2003 Autor Geschrieben 20. Januar 2003 erstmal Danke für die schnelle Antwort... aber leider funktioniert der Lösungsvorschlag nicht :-( vielleicht noch eine andere Idee?? falls möglich mich über ICQ (69498840)anschreiben da es über das Forum alles ein wenig zu langsam ist WTO Zitieren
Peregrin Geschrieben 20. Januar 2003 Geschrieben 20. Januar 2003 hi, nach folgenden aenderungen hat es (zumindest bei mir) funktioniert: For i = 1 To 5 Load Frame1(i) Frame1(i).Top = Frame1(i - 1).Top + 730 Frame1(i).Visible = True Frame1(i).Caption = "frm" & i Load Option2(i) Option2(i).Caption = "opt" & i Option2(i).Top = 250 Option2(i).Left = 100 Set Option2(i).Container = Frame1(i) Option2(i).Visible = True Next sieht mir also danach aus, dass die eigenschaft visible doch gesetzt wurde, nur die option-buttons aus dem sichtbaren bereich geschoben wurden... (der umgebende container wird auf den frame gesetzt und alle angaben zu .top etc sind relativ zum container zu machen) enjoy! Zitieren
WTO Geschrieben 20. Januar 2003 Autor Geschrieben 20. Januar 2003 sauber, so funzt es :-) vielen dank (ich mag den VB schrott nach der sache noch weniger...) gehören solche probleme zum standardwissen eines vb coders? oder hattest du damit schon mal zu tun? WTO Nachtrag: upps mir ist grad aufgefallen das es nur an der Positionierung lag, nicht daran ob das Formular schon angezeigt ist oder nicht.... also macht es doch irgendwie Sinn ;-) Zitieren
Peregrin Geschrieben 20. Januar 2003 Geschrieben 20. Januar 2003 naja, zum standardwissen schon irgendwie, zumindest wenn man etwas laenger mit vb arbeitet... ist mir aber auch erst beim zweiten durchlesen aufgefallen. wenn man weiss, wonach suchen, hilft die msdn meistens recht gut. Zitieren
WTO Geschrieben 20. Januar 2003 Autor Geschrieben 20. Januar 2003 aha naja ich bin kein VB coder und im nachhinein lag es ja doch an etwas anderen als das was ich vermutet hatte... aber was der debug modus da sagte war ja nunmal irgendwie falsch....naja nu egal so da das hier mit der hilfe so fix geht ;-) gleich das nächste! wie prüfe ich in vb ob ein objekt initialisiert wurde oder nicht?!!? also so was in der art wie if objTest = Nothing then set objTest =new LustigesObjekt end if kannste mir da nochmal bitte helfen?!?!?!?? WTO Zitieren
Peregrin Geschrieben 21. Januar 2003 Geschrieben 21. Januar 2003 so ziemlich richtig, aber der vergleichsoperator bei objekten ist "is": if (obj is nothing) then set obj = new object end if nicht aergern, nur wundern. ist halt vb... enjoy! Zitieren
WTO Geschrieben 21. Januar 2003 Autor Geschrieben 21. Januar 2003 arrggg..dsgsaggsgf ) wat für'n sc****** dank dir Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.