Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/56: Рейтинг темы: голосов - 56, средняя оценка - 4.82
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
1

TChromium и TChromeTabs

03.06.2013, 11:42. Показов 11120. Ответов 46
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день!
Уже 5 вечер бьюсь с вкладками компонента TChromium
Вот мой код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.ChromeTabs1ButtonAddClick(Sender: TObject;
  var Handled: Boolean);
  var TabChr:TChromium;
      TabTab:TChromeTabs;
      TabEdit:TEdit;
begin
TabChr.Create(Self);
TabChr.Parent:=Self;
TabChr.Height:=366;
TabChr.Width:=1002;
TabChr.Top:=72;
TabEdit.Create(Self);
TabEdit.Parent:=Self;
TabEdit.Width:=1001;
TabEdit.Top:=48;
TabEdit.Height:=21;
end;
Не могу понять, почему же это не работает. Запускаю проект, нажимаю добавить вкладку и билд падает с ошибкой.
Что я делаю не так?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2013, 11:42
Ответы с готовыми решениями:

TChromeTabs - Delphi 7
Скачал TChromeTabs 1.3 с офф сайта. Установил по инструкции. Всё хорошо НО - при запуске...

TChromium
Добрый день, у меня возник такой вопрос. Я кидаю combobox на форму вместе с кнопкой, к кнопки...

TChromium
доброго времени суток нужна замена WebBrowser, нашел компонент TChromium вот тут ...

TChromium
Доброго времени суток. Не могу понять по какой причине не работает компонент TChromium.Делал всё...

46
122 / 120 / 41
Регистрация: 27.01.2013
Сообщений: 546
06.06.2013, 14:12 2
Цитата Сообщение от crystalcfg Посмотреть сообщение
нажимаю добавить вкладку
Что-то у меня со зрением плохо.
А, где Ты вкладку создаешь?

Добавлено через 6 минут
Цитата Сообщение от crystalcfg Посмотреть сообщение
Не могу понять, почему же это не работает.
Создал TChromium и TEdit, раскидал по форме. Чему тут работать?
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
06.06.2013, 14:17  [ТС] 3
Цитата Сообщение от NT SERVICE Посмотреть сообщение
А, где Ты вкладку создаешь?
Название процедуры -
Цитата Сообщение от crystalcfg Посмотреть сообщение
ChromeTabs1ButtonAddClick
следовательно есть кнопка в визуализации компонента chrometabs
вот скринсшот
http://3.firepic.org/3/images/... zqnf7r.png

Добавлено через 52 секунды
По моей логике, если я создаю через create и задаю размеры, это должно появится на форме.
Подскажи как, если я не прав

Добавлено через 1 минуту
я понял что ты имел ввиду
сама вкладка (ее визуальный вид) создает компонент TChromeTabs по умолчанию, при нажатии на add
0
122 / 120 / 41
Регистрация: 27.01.2013
Сообщений: 546
06.06.2013, 14:28 4
А какая именно ошибка?
И все-таки наверное так: TabChr.Parent:=TabTab;
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
07.06.2013, 02:02  [ТС] 5
Билд падал из-за другого, разобрался.
Новая вкладка, замещаяет содержимое предыдущей

Добавлено через 11 минут
Цитата Сообщение от NT SERVICE Посмотреть сообщение
TabChr.Parent:=TabTab;
сайт открывается прямо в окошке "табов"

Добавлено через 10 часов 33 минуты
ап тему
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:30  [ТС] 6
Никто так и не поможет ? :C
0
Заблокирован
09.06.2013, 18:36 7
С чем??? Для чего вообще все эти TEdit с owner/etc = SELF? За Parent = self вообще руки оторвать.
1
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:37  [ТС] 8
Вкладки так и не заработали -_-
Мне преподаватель дал книжку по делфи, там указанно работа с конструктором именно через self.
По другому как то я не умею. -_-
0
Заблокирован
09.06.2013, 18:39 9
С КОНСТРУКТОРОМ!!! А не с parent итд для рисования. У тебя кольцованный ondraw будет минимум.
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:40  [ТС] 10
вот что я накалякал снова, но это не работает
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.ChromeTabs1ButtonAddClick(Sender: TObject;
  var Handled: Boolean);
 var
  Chrome:TChromium;
  ChromeTb:TChromeTabs;
  ChromeEdit:TEdit;
begin
Chrome:=TChromium.Create(Self);
Chrome.Name:='Chromium2';
Chrome.Parent:=Self;
Chrome.Load('bing.com');
Chrome.Align:=AlClient;
Chrome.Height:=100;
Chrome.Width:=100;
Chrome.Top:=100;
Chrome.Left:=100;
end;
Добавлено через 25 секунд
Цитата Сообщение от Dr_Quake Посмотреть сообщение
parent итд для рисования
эмм....
0
Заблокирован
09.06.2013, 18:42 11
Parent = Form1, Name даже не вздумай трогать. Chrome.Show в конце.
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:45  [ТС] 12
Получается, что содержимое предыдущей вкладки замещается содержимым новой вкладки.
Эта загвоздка у меня уже полторы недели -_-

Добавлено через 37 секунд
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.ChromeTabs1ButtonAddClick(Sender: TObject;
  var Handled: Bo11olean);
  var
  Chrome:TChromium;
  ChromeTb:TChromeTabs;
  ChromeEdit:TEdit;
begin
Chrome:=TChromium.Create(Form1);
Chrome.Parent:=Form1;
Chrome.Load('bing.com');
Chrome.Align:=AlClient;
Chrome.Height:=100;
Chrome.Width:=100;
Chrome.Top:=100;
Chrome.Left:=100;
Chrome.Show;
end;
Вроде учел все, что ты указал
0
Заблокирован
09.06.2013, 18:48 13
А где у тебя tabs то - только в переменых? Не используются вообще, всё верно в коде- так и должно работать.
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:48  [ТС] 14
Моя идея заключалась в том, чтобы name менялся по счетчику, а делал тупой show и hide на событии OnTabChanging
0
Заблокирован
09.06.2013, 18:49 15
Полный код приведи.
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:52  [ТС] 16
Полный код проекта? Хорошо
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
unit MainWindow;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, cefvcl, ChromeTabs,ceflib, sSkinManager, sSkinProvider,
  sEdit;
 
type
  TForm1 = class(TForm)
    Chromium1: TChromium;
    ChromeTabs1: TChromeTabs;
    GroupBox1: TGroupBox;
    sEdit1: TsEdit;
    procedure FormKeyPress(Sender: TObject; var Key: Char);
    procedure ChromeTabs1ButtonAddClick(Sender: TObject;
      var Handled: Boolean);
    procedure Chromium1AddressChange(Sender: TObject;
      const browser: ICefBrowser; const frame: ICefFrame;
      const url: ustring; out Result: Boolean);
    procedure FormCreate(Sender: TObject);
    procedure sEdit1Click(Sender: TObject);
    procedure sEdit1DblClick(Sender: TObject);
    procedure Chromium1TitleChange(Sender: TObject;
      const browser: ICefBrowser; const title: ustring;
      out Result: Boolean);
    procedure ChromeTabs1ActiveTabChanged(Sender: TObject;
      ATab: TChromeTabs);
    procedure FormResize(Sender: TObject);
    procedure FormActivate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
Const DefaultCookiesDir = 'Cookies/';
var
  Form1: TForm1;
 
implementation
 
 
{$R *.dfm}
 
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
if ord(key) = VK_RETURN Then
chromium1.Load(sedit1.text);
end;
 
 
procedure TForm1.ChromeTabs1ButtonAddClick(Sender: TObject;
  var Handled: Boolean);
  var
  Chrome:TChromium;
  ChromeTb:TChromeTabs;
  ChromeEdit:TEdit;
begin
Chrome:=TChromium.Create(Form1);
Chrome.Parent:=Form1;
Chrome.Load('bing.com');
Chrome.Align:=AlClient;
Chrome.Height:=100;
Chrome.Width:=100;
Chrome.Top:=100;
Chrome.Left:=100;
Chrome.Show;
end;
 
 
procedure TForm1.Chromium1AddressChange(Sender: TObject;
  const browser: ICefBrowser; const frame: ICefFrame; const url: ustring;
  out Result: Boolean);
begin
sedit1.text:=url;
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
CefUserAgent:='Crystal.Broswer';
ChromeTabs1.Update;
Chromium1.Update;
end;
 
procedure TForm1.sEdit1Click(Sender: TObject);
var AllText:Integer;
begin
alltext:=Length(sedit1.text);
sEdit1.SelStart:=0;
sEdit1.SelLength:=alltext;
sEdit1.SetFocus;
end;
 
procedure TForm1.sEdit1DblClick(Sender: TObject);
begin
sedit1.SelLength:=0;
end;
 
procedure TForm1.Chromium1TitleChange(Sender: TObject;
  const browser: ICefBrowser; const title: ustring; out Result: Boolean);
  var indextab:integer;
begin
indextab:=ChromeTabs1.ActiveTabIndex;
ChromeTabs1.Tabs.ActiveTab.Caption:=title;
end;
 
procedure TForm1.ChromeTabs1ActiveTabChanged(Sender: TObject;
  ATab: TChromeTabs);
  var Chrome:TChromium;
begin
if ChromeTabs1.ActiveTabIndex = 1 then chrome.Hide;
if ChromeTabs1.ActiveTabIndex = 2 then chromium1.Hide;
end;
 
procedure TForm1.FormResize(Sender: TObject);
begin
ChromeTabs1.Update;
Chromium1.Update;
end;
 
procedure TForm1.FormActivate(Sender: TObject);
begin
GroupBox1.SetFocus;
ChromeTabs1.SetFocus;
Chromium1.SetFocus;
sEdit1.SetFocus;
 
end;
 
end.
0
Заблокирован
09.06.2013, 18:54 17
Ну, тут не видно никакой связи между ChromeTabs и Chrome. В редакторе что ли писал в свойствах на форме?
1
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 18:59  [ТС] 18
Вот это то что я ищу!
Как мне это реализовать?
0
Заблокирован
09.06.2013, 19:16 19
Кладёшь ChromeTabs как контейнер, в массиве табов созданных устанавливаешь Parent' ов для созданных Chrome, всё в примере Demo для ChromeTabs.
0
1 / 1 / 0
Регистрация: 03.06.2013
Сообщений: 66
09.06.2013, 19:18  [ТС] 20
Спасибо! Сейчас посмотрю, отпишусь о результатах!
0
09.06.2013, 19:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.06.2013, 19:18
Помогаю со студенческими работами здесь

Tchromium DOM
Если в хроме подобие WB - (WebBrowser1.Document as IHTMLDocument2).body.outerHTML; ну или...

TChromium тормозит
В общем не пойму в чём косяк.. Проблема не в коде. Пустая форма..на ней TChromium. и.. ...

Компонент TChromium
Здравствуйте почему при загрузки в TChromium загружается любая страница на анг.языке ....а как...

Delphi TChromium
Доброго времени суток. При открытии программы загружается html файл в Chromium и отправляется...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru