Форум: "Начинающим";
Текущий архив: 2007.03.11;
Скачать: [xml.tar.bz2];
ВнизНужна срочная помощь Найти похожие ветки
← →
Nija (2007-02-17 14:45) [0]Привет всем! Подскажите плиз ка решить эту проблему: у меня есть Pagecontrol и TabSheet1 расположённый на нём. В run-time я добавляю TabSheet`ы с расположенными на них Combobox и webbrouser следующим образом:
var
t:tTabSheet;
w:Twebbrowser;
c:Tcombobox;
p:Tpanel;
begin
t := TTabSheet.Create(PageControl1);
t.PageControl := PageControl1;
t.Caption:="?????? ????????";
p:=Tpanel.Create(t);
Twincontrol(p).Parent:=t;
p.Align:=altop;
c:=Tcombobox.Create(p);
Twincontrol(c).Parent:=p;
p.BevelOuter:=bvNone;
p.Height:=19;
c.Align:=alTop;
w := TWebBrowser.Create(t);
TWinControl(w).Parent := t;
w.Align:=alclient;
end;
Проблема втом что мне нужно что бы комбобокс передал Веббрауеру некоторую инфу.Но так как я создаю их в Run-time я не знаю как это сделать.Все ослажняется тем что у меня может быть создано очень много Combobox, и как обратиться к тому которы лежит на TabSheet который я просматриваю в данный момент.
P.S. Простите что так не красиво офрмил вопрос, просто спешу, если не понятен вопрос напишу поподробнее. А вобщето я хочу написать много оконный Web-brouser(так как это сделали Opera, Maxton..) если у кого есть исходник токого то выложите пожалуйста просто охото посмотреть как он написан.
← →
RASkov (2007-02-17 15:41) [1]> [0] Nija (17.02.07 14:45)
Я считаю, комбобокс (если это адресная строка) должен быть один(общий) для всех страничек, да и WebBrowser тоже один может быть....
При смене Page на Pagecontrolе заполняй необходимые свойства комбика и вебброфзера... имхо.
← →
Nija (2007-02-17 16:11) [2]>заполняй необходимые свойства комбика и вебброфзера
А как мне это сделать ведь я создаю её в Run-time и незнаю её имени, может подскажите...
← →
RASkov (2007-02-17 16:55) [3]> [2] Nija (17.02.07 16:11)
L: TList;
Заноси в список созданные компоненты.
L.Add(w);
Обращайся
....
TWebBrowser(L[PageControl1.ActivePageIndex]).Navigate("");
> я создаю её в Run-time и незнаю её имени
можно имена уникальные генерить и FindComponent()
Вообщем ты определись как у тебя это все будет выглядеть, и если конкретные вопросы будут спрашивай.
← →
Nija (2007-02-17 19:47) [4]>Вообщем ты определись как у тебя это все будет выглядеть, и если >конкретные вопросы будут спрашивай.
Я сразу определился, и у меня возник конкретный вопрос: У меня в Run-time создаётся Tabsheet, Web Broser, Combobox, мне нужно что бы в созданных мною компонентах из комбобокс можно было бы послать команду браузеру. Тоесть допустим я создал 10 Tabsheet, Web Broser, Combobox, открыл к примеру восьмой, набрал текст в комбобокс и отправил запрос к вебброузеру. Подскажите пожалуйста как это организовать.
← →
Nija (2007-02-18 13:07) [5]Пожалуйста люди помогите, мне скоро сдовать эту прогу в школу, а она не готова. Если не понятен вопрос то я могу ещё раз поподробнее обьяснить.
← →
Nija (2007-02-18 13:12) [6]Пожалуйста люди помогите, мне скоро сдовать эту прогу в школу, а она не готова. Если не понятен вопрос то я могу ещё раз поподробнее обьяснить.
← →
Leonid Troyanovsky © (2007-02-18 13:46) [7]
> Nija (18.02.07 13:12) [6]
> школу, а она не готова. Если не понятен вопрос то я могу
> ещё раз поподробнее обьяснить.
А что в ответах тобой непонято?
--
Regards, LVT.
← →
Nija (2007-02-18 14:03) [8]Всё!!!
Простите наверно я выгляжу глупо, но я ни как не могу разобраться, поэтому и прошу помощи
← →
RASkov (2007-02-18 14:16) [9]> [6] Nija (18.02.07 13:12)
Пожалуйста люди помогите, мне скоро сдовать эту прогу в школу, а она не готова
Эх ты и лентяй, на попробуй:
TWebTab = class(TTabSheet)
FCombo: TComboBox;
FWeb: TWebBrowser;
FBb: TButton;
FPan: TPanel;
procedure WebNavigate(Sender: TObject);
public
constructor MyCreate(Pg: TPageControl);
end;
......
{ TWebTab }
constructor TWebTab.MyCreate(Pg: TPageControl);
begin
inherited Create(Owner);
PageControl:=Pg;
FCombo:=TComboBox.Create(Self);
FPan:=TPanel.Create(Self);
FWeb:=TWebBrowser.Create(Self);
FPan.Align:=alTop;
FPan.Parent:=Self;
FPan.Height:=25;
FBb:= TButton.Create(Self);
FBb.Parent:=FPan;
FBb.Left:=FPan.Width-FBb.Width-2;
FBb.Top:=2;
FBb.Height:=21;
FBb.Caption:="Перейти";
FBb.OnClick:=WebNavigate;
FCombo.Parent:=FPan;
FCombo.Left:=2;
FCombo.Top:=2;
FCombo.Width:=FPan.Width-FBb.Width-5;
FCombo.Anchors:=[akLeft,akRight];
FCombo.OnSelect:=WebNavigate;
TWinControl(FWeb).Parent:=Self;
FWeb.Align:=alClient;
WebNavigate(FCombo);
end;
procedure TWebTab.WebNavigate(Sender: TObject);
begin
if Trim(FCombo.Text)="" then begin
FWeb.Navigate(FCombo.Text);
Caption:="about:blank";
Exit;
end;
FWeb.Navigate(FCombo.Text);
if FCombo.Items.IndexOf(FCombo.Text)<0 then FCombo.Items.Add(FCombo.Text);
Caption:=FCombo.Text;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
TWebTab.MyCreate(PageControl1);
end;
← →
Nija (2007-02-18 14:45) [10]Простите вроде с алгоритм я понил, но он не работает(или я что то не так сделал). Когда мы нажимаем на кнопку то создаётся web-brouser, combobox...
и FCombo присваевается значение Combobox, и потом идет WebNavigate(FCombo). Но ведь когда это всё происходит Combobox остаётся пустым(так как только что создался), а ведь я ввожу текст уже когда он создалься и передал команду Web-brouser`у.Следовательно этот код не рабочий(как мне кажется, но как я уже сказал я могу ошибаться)
← →
RASkov (2007-02-18 15:00) [11]> [10] Nija (18.02.07 14:45)
После того как ты нажмешь на кнопку Button1 на форме, то на PageControl добавится новая страница с адресом "about:blank", далее ты можешь вводить адрес в Combo и нажимать кнопку переход. Можешь доработать конструктор MyCreate и передавать туда еще и строку с адресом. Типа так:constructor TWebTab.MyCreate(Pg: TPageControl; const SUrl: String="about:blank");
begin
...
FCombo.Text:=SUrl;
....
WebNavigate(FCombo);
end;
создание из программы
TWebTab.MyCreate(PageControl1, "www.delphimaster.ru");
Или я не понял вопроса....
> Следовательно этот код не рабочий(как мне кажется,
А ты хочешь, что-бы за тебя написали твою домашнюю работу? Думай.
← →
Nija (2007-02-18 15:06) [12]Сорри, теперь понял что не так, я не заметил что создаётся кнопка, а она создаётся под Combobox
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.03.11;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.041 c