Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обратиться к компоненте, по порядковому номеру 
:(
    Опции темы
TrillerMan
Дата 27.12.2006, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 20.12.2006

Репутация: нет
Всего: нет



Здрасти всем пытаюсь вызвать компоненту такими действиями.Но так как компонента не родная делфы ничего не выхоlдит.Как сделать правильно?
Компонента визуальная и она уже есть на форме.ПРосто как обратиться к компоеннте по её порядковому номеру? smile 
Так не выходит((
for i := 0 to (Form1.ControlCount-1) do if (Form1.Controls[i] is TEmbeddedWB) then
     Form1.Controls[i].Navigate('mail.ru');
PM MAIL   Вверх
Matematik
Дата 27.12.2006, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1027
Регистрация: 11.3.2006

Репутация: 17
Всего: 50



Код

TEmbeddedWB(Form1.Controls[i]).Navigate('mail.ru')
{или}
(Form1.Controls[i] as TEmbeddedWB).Navigate('mail.ru')

PM MAIL WWW ICQ   Вверх
TrillerMan
Дата 27.12.2006, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 20.12.2006

Репутация: нет
Всего: нет



var 
i:integer;
i:=2;
(Form1.Controls[i] as TEmbeddedWB).Navigate('mail.ru')


ругаеться так:
List index out of bounds(2) 


что не так?

Это сообщение отредактировал(а) TrillerMan - 27.12.2006, 12:57
PM MAIL   Вверх
Snowy
Дата 27.12.2006, 12:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Значит у тебя на форме меньше 3-х компонент.
PM MAIL   Вверх
TrillerMan
Дата 27.12.2006, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 20.12.2006

Репутация: нет
Всего: нет



Их 10.Что не так делаю? smile 
Каждый браузер у меня находиться внутри TPageControl
Код

type
  TForm1 = class(TForm)
 EmbeddedWB1: TEmbeddedWB;
    EmbeddedWB2: TEmbeddedWB;
    EmbeddedWB3: TEmbeddedWB;
    EmbeddedWB4: TEmbeddedWB;
    EmbeddedWB5: TEmbeddedWB;
    EmbeddedWB6: TEmbeddedWB;
    EmbeddedWB7: TEmbeddedWB;
    EmbeddedWB8: TEmbeddedWB;
    EmbeddedWB9: TEmbeddedWB;
    EmbeddedWB10: TEmbeddedWB;


Добавлено @ 13:18 
Может потому что у меня каждый  EmbeddedWB1: TEmbeddedWB; находиться внтури TPageControl ?

Это сообщение отредактировал(а) Girder - 27.12.2006, 14:15
PM MAIL   Вверх
TrillerMan
Дата 27.12.2006, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 20.12.2006

Репутация: нет
Всего: нет



Так как они у меня внутри TPageControl  написал так 
 i:=2;
(Form1.PageControl1.Controls[i] as TEmbeddedWB).Navigate('mail.ru')
Теперь ругаеться делфа так
invalid class typecast

Добавлено @ 13:28 
ЧТо же делать товарисчи?  smile 
PM MAIL   Вверх
Snowy
Дата 27.12.2006, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Код

var
  i, j: integer;
begin
  i:=2;
  with PageControl1.Pages[i] do
    for j := 0 to ControlCount - 1 do
      if (Controls[j] is TEmbeddedWB) then
         (Controls[j] as TEmbeddedWB).Navigate('mail.ru');
end;

PM MAIL   Вверх
TrillerMan
Дата 27.12.2006, 14:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 46
Регистрация: 20.12.2006

Репутация: нет
Всего: нет



Нужна к ним обратиться к 10 браузерам и открыть во всех 10,
вот что отрыл но тоже если 0 меняю на чтото другое не пашет
TEmbeddedWB(PageControl1.ActivePage.Controls[0]).navigate('mail.ru');

Говорит тоже самое List index out of bounds(2) 
PM MAIL   Вверх
Snowy
Дата 27.12.2006, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Код

  i := 2;
  (FindComponent('EmbeddedWB' + IntToStr(i)) as TEmbeddedWB).Navigate('www.mail.ru');

PM MAIL   Вверх
Rennigth
Дата 27.12.2006, 14:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1708
Регистрация: 21.6.2004
Где: Moscow

Репутация: 49
Всего: 76



TrillerMan, 

Код

procedure ForceNavigateAllBrowsers(AParent: TWincontrol);
var
  i: Integer;
begin
  if Assigned(AParent) and (AParent is TWincontrol) then
    for i := AParent.ControlCount - 1 downto 0 do
    begin
      if AParent.Controls[i] is TEmbeddedWB then
        TEmbeddedWB(AParent.Controls[i]).Navigate('www.mail.ru');
      if AParent.Controls[i] is TWincontrol then
        ForceNavigateAllBrowsers(TWincontrol(AParent.Controls[i]));
    end;
end;
//...
ForceNavigateAllBrowsers(Form1)


smile


--------------------
(* Honesta mors turpi vita potior *)
PM MAIL ICQ   Вверх
Winprogrammer
Дата 13.1.2007, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 141
Регистрация: 23.3.2006
Где: ::Россия.РСО-Алан ия.Владикавка

Репутация: нет
Всего: нет



Ну если они разбросаны по TTabControl, то у них родители будут соответственно эти табконтролы, на которых они лежат. Для поиска обращайся так же как и при поиске по форме, только вместо form1 пиши свой таб.
--------------------
Я не понял Вашего вопроса, но я Вам на него отвечу…-----------
Uploading файлов без гемороя - это просто!!!
Winprogrammer.ifolder.ru
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0552 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.