AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dynamische Komponentennamen

Ein Thema von snapman · begonnen am 7. Sep 2006 · letzter Beitrag vom 7. Sep 2006
Antwort Antwort
snapman
(Gast)

n/a Beiträge
 
#1

Dynamische Komponentennamen

  Alt 7. Sep 2006, 10:17
Hallo,
ich brauche für einen Browser TabbedBrowsing und verwende hierfür folgenden Code:

Delphi-Quellcode:
  Tab:= TTabSheet.Create(PageControl1);
  Tab.PageControl:= PageControl1;
  Tab.Caption:= '[Unbenannt]';
  Pagecontrol1.ActivePage:=Tab;

  Browser:= TMozillaBrowser.Create(Tab);
  TControl(Browser).Parent:= Tab;
  Browser.Navigate('about:blank');
Dies funktioniert auch soweit, aber unabhängig vom aktiven Tab wird nun immer nur der letzte erstellte Browser angesprochen.
Die Frage ist nun wie kann ich die Namen dynamisch vergeben (Browser1,Browser2), so daß ich jeweils den aktiven ansprechen kann...ihr versteht sicher mein Problem
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Dynamische Komponentennamen

  Alt 7. Sep 2006, 10:48
Am besten du erzeugst dir einen Array in dem du die Referenzen ablegst oder gibst den dy. Instanzen eind. namen und verwendest .FindControl
Markus Kinzler
  Mit Zitat antworten Zitat
snapman
(Gast)

n/a Beiträge
 
#3

Re: Dynamische Komponentennamen

  Alt 7. Sep 2006, 11:16
Habs mal mit

[...]

TControl(Browser).Name:='Browser'+inttostr(PageCon trol1.TabIndex);
(FindComponent('Browser'+inttostr(PageControl1.Tab Index)) as TMozillaBrowser).Navigate('www.www.de');


versucht...kommt aber nur eine Access Violation
  Mit Zitat antworten Zitat
Andreas L.
(Gast)

n/a Beiträge
 
#4

Re: Dynamische Komponentennamen

  Alt 7. Sep 2006, 11:33
Zitat von snapman:
Habs mal mit

[...]

TControl(Browser).Name:='Browser'+inttostr(PageCon trol1.TabIndex);
(FindComponent('Browser'+inttostr(PageControl1.Tab Index)) as TMozillaBrowser).Navigate('www.www.de');


versucht...kommt aber nur eine Access Violation
Probiers mal so:
Delphi-Quellcode:
TControl(Browser).Name:='Browser'+inttostr(PageControl1.TabIndex);
 (form1.FindComponent('Browser'+inttostr(PageControl1.TabIndex)) as TMozillaBrowser).Navigate('www.www.de');
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Dynamische Komponentennamen

  Alt 7. Sep 2006, 11:34
Versuch mal:
 (PageControl1.FindComponent('Browser'+inttostr(PageControl1.TabIndex)) as TMozillaBrowser).Navigate('www.www.de'); Ich würde die Lösung mit array aber vorziehen!
Markus Kinzler
  Mit Zitat antworten Zitat
snapman
(Gast)

n/a Beiträge
 
#6

Re: Dynamische Komponentennamen

  Alt 7. Sep 2006, 12:18
thx erstmal an euch

das ist nun die korrekte lösung...ohne das activepage gibt es auch violation..weil parent ja dem tab gehört
(PageControl1.ActivePage.FindComponent('Browser'+i nttostr(PageControl1.TabIndex)) as TMozillaBrowser).Navigate(edit1.text);
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz