Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 70, средняя оценка - 4.66
alexandr017
2 / 2 / 1
Регистрация: 09.12.2011
Сообщений: 58
#1

Динамическое создание вкладок в PageControl - Delphi

22.12.2012, 23:17. Просмотров 9829. Ответов 17
Метки нет (Все метки)

Я пишу html-редактор..использовал конпонент PageControl..на котором 2 вкладки (визуальный режим и редактирование кода)..тоесь на первой вкладке был компонент WebBrowser, а на второй SynEdit....Мне хотелось бы сделать чтобы одновременно можно было работать с несколькими файлами..тоесть при нажатии кнопки "открыть" рядом открывался новый файл при этом не закрывая сущеструющий..(то есть такая же система как допустим в фотошопе)...Проблема заключается в том что при открытии файла нужно как-то динамически создавать вкладку, на которой нужно одновременно отображать и "режим редактирования кода" и "визуадьный режим"

То есть получается примерно такая ситуация: На самой форме есть компонент PageControl, который отвечает за количество одновременно открытых файлов...при этом на кажной вкладке этого компонента есть ещё один компонент PageControl, на которым 2 вкладки. Одна для визуального редактирования, вторая для редактирования кода....

Вот что у меня вышло..однако здесь просто окрывается файл и просматривается его код..то есть без визуального редактирования..


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
procedure TForm1.N3Click(Sender: TObject);
var
  NewTab: TTabSheet;
  NewSynEdit: TSynEdit;
begin
if OpenDialog1.Execute then begin
 
  // создаем новый TabSheet
  NewTab := TTabSheet.Create(PageControl1);
  with NewTab do
  begin
    PageControl := PageControl1;
    Caption := 'Закладка ' + IntToStr(PageControl1.PageCount);
  end;
  // создаем новый SynEdit
  NewSynEdit := TSynEdit.Create(NewTab);
  with NewSynEdit do
  begin
  Highlighter:=SynHTMLSyn1;
    Parent := NewTab;
    Align := alClient;
    Clear;
  end;
  PageControl1.ActivePageIndex := PageControl1.PageCount - 1;
    (PageControl1.ActivePage.Components[0] as TSynEdit).Lines.LoadFromFile(OpenDialog1.FileName);
end;
end;
Возможно это можно сделать как-то проще без всяких PageControl...если кто знает..подскажите)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2012, 23:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Динамическое создание вкладок в PageControl (Delphi):

Динамическое создание вкладок PageControl и их сохранение - Delphi
Доброго времени суток, форумцы! Сейчас написана программа по работе с Excel-документами. К сожалению, все статично, все прописано в...

Прокрутка вкладок PageControl'a - Delphi
Всем Привет!:) Есть PageControl с вкладками расположенными справа, но не простой, а TAdvOfficePager, поскольку вкладок может быть очень...

Открытие вкладок PageControl - Delphi
У меня есть PageControl с созданными вкладками. При выборе из списка TreeView становиться активной необходимая вкладка. Мне нужно чтобы при...

Добавление вкладок на PageControl - Delphi
Здравствуйте! Мне необходимо добавить вкладку на PageControl, и с эти впринципе проблем нет. Но я не могу добавить на созданные вкладки...

Pagecontrol количество вкладок - Delphi
У меня такая проблема, мне необходимо что бы программа посчитала сколько вкладок у pagecontrol, подскажите кто знает. (Вкладки создаются...

Цвет вкладок в pagecontrol - Delphi
Как изменить цвет вкладки в pagecontrol при наведении на нее мыши?То есть я навожу курсор на любую вкладку и она выделяется(подсвечивается)...

17
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
24007 / 15988 / 4836
Регистрация: 22.10.2011
Сообщений: 28,287
Записей в блоге: 5
23.09.2013, 16:16 #16
Для Лазаруса - задавай вопрос здесь: http://www.cyberforum.ru/lazarus/ Желательно - с фрагментами кода (как именно создается форма, как она показывается и как на ней создаются гриды)...
1
northener
пофигист широкого профиля
3153 / 2206 / 469
Регистрация: 15.07.2013
Сообщений: 12,874
23.09.2013, 19:46 #17
Цитата Сообщение от Бельчонок777 Посмотреть сообщение
Там при повторном входе в форму (после того, как ее до этого закрыли) идет сообщение, что StrigGrid уже есть
В Дельфи то же самое.
0
Бельчонок777
30 / 0 / 1
Регистрация: 29.09.2009
Сообщений: 56
24.09.2013, 09:33 #18
Цитата Сообщение от northener Посмотреть сообщение
В Дельфи то же самое.
Нет. Прикладываю проект дельфевый, он работает нормально.
0
Вложения
Тип файла: rar test.rar (193.5 Кб, 85 просмотров)
24.09.2013, 09:33
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.09.2013, 09:33
Привет! Вот еще темы с ответами:

Как можно изменить имена вкладок PageControl'а - Delphi
Есть форма, с pagecontrol. Как можно изменить имена вкладок student и discipline? При прописывании ...

Как провесить процедуру на OnShow динамически созданных вкладок PageControl'a - Delphi
Есть PageControl, на котором динамически создаются вкладки. При переключении этих вкладок, нужно чтобы менялся размер PageControl'a.

Динамическое заполнение Pagecontrol - Delphi
Всем доброго времени суток! Столкнулся с проблемой. Есть форма, на которой находится bitbtn и pagecontrol c двумя вкладками. Суть...

Создание скрола в pagecontrol - Delphi
парни, как в pagecontrol создать бардюр?


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru