Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 08.09.2012, 13:26
Аватар для borockov
borockov borockov вне форума
Начинающий
 
Регистрация: 18.08.2012
Сообщения: 125
Репутация: 10
По умолчанию richedit или memo Массовое открытие файлов

Друзья интересует такой вопрос, вот к примеру у меня в мемо или ричэдит находится текст, теперь при открытий другого тхт как сделать так что бы создалась вкладка, типа как в notepad++. А вообще как лучше реализовать массовое открытие тхт файлов хотя бы до 100 штук? Спасибо!
Ответить с цитированием
  #2  
Старый 08.09.2012, 13:56
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Собственные идеи есть? В принципе задачка тривиальная.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 08.09.2012, 14:07
Аватар для borockov
borockov borockov вне форума
Начинающий
 
Регистрация: 18.08.2012
Сообщения: 125
Репутация: 10
По умолчанию =)

Собственых идей по этому поводу вообще нет. Я даже не представляю себе как это можно сделать если быть до конца честным. Я не особо углублялся с этими компонентами.
Ответить с цитированием
  #4  
Старый 08.09.2012, 14:52
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Как вариант, можно сделать потомка от TPageControl, на страницах которого можно хранить имя файла и редактор. Когда открываешь файл, просто добавляешь страницу.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение:
borockov (08.09.2012)
  #5  
Старый 08.09.2012, 17:01
Аватар для borockov
borockov borockov вне форума
Начинающий
 
Регистрация: 18.08.2012
Сообщения: 125
Репутация: 10
По умолчанию =)

Ух как, об этом я даже и не подумал, круто! Можешь показать небольшой примерчик?
Ответить с цитированием
  #6  
Старый 08.09.2012, 17:41
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию }(

Как пример, посмотри AkelPad, Notepad++ и т.д. Зачем же их сюда постить?
Таков "примерчик", как ты просишь, будет уже готовым решением

Берешь компонент TTabSheet, создаешь на его основе потомка, унаследуешь практически все методы и свойства родителя, к нему добавляешь 1 TRichEdit в Public declarations, который создается в конструкторе компонента (выравнивание alClient и т.п).
Берешь компонент TPageControl, создаешь на его основе потомка, унаследуешь практически все методы и свойства родителя, вместо обычных
TTabSheet устанавливаешь свои (смотреть выше). Вот практически и все, осталось добавить несколько дополнительных методов для удобности и зарегить компоненты.
Ответить с цитированием
Этот пользователь сказал Спасибо YVitaliy за это полезное сообщение:
borockov (08.09.2012)
  #7  
Старый 08.09.2012, 19:06
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Код:
type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    Panel1: TPanel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
...
procedure TForm1.Button1Click(Sender: TObject);
var
  ATabSheet: TTabSheet;
  ARichEdit: TRichEdit;
begin
  ATabSheet:=TTabSheet.Create(PageControl1);
  ATabSheet.PageControl:=PageControl1;
  ATabSheet.Caption:='Файл '+IntToStr(Tag);
  Tag:=Tag+1;
  ARichEdit:=TRichEdit.Create(ATabSheet);
  ARichEdit.Parent:=ATabSheet;
  ARichEdit.Align:=alClient;
end;
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Этот пользователь сказал Спасибо NumLock за это полезное сообщение:
borockov (08.09.2012)
  #8  
Старый 08.09.2012, 19:57
Аватар для borockov
borockov borockov вне форума
Начинающий
 
Регистрация: 18.08.2012
Сообщения: 125
Репутация: 10
По умолчанию =)

Друзья всем большое спасибо! Ура работает!!!
Ответить с цитированием
  #9  
Старый 08.09.2012, 19:59
Аватар для YVitaliy
YVitaliy YVitaliy вне форума
Местный
 
Регистрация: 14.12.2011
Сообщения: 481
Версия Delphi: Borland Delphi7
Репутация: 17
По умолчанию

Цитата:
Сообщение от NumLock
Код:
type
  TForm1 = class(TForm)
    PageControl1: TPageControl;
    Panel1: TPanel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
...
procedure TForm1.Button1Click(Sender: TObject);
var
  ATabSheet: TTabSheet;
  ARichEdit: TRichEdit;
begin
  ATabSheet:=TTabSheet.Create(PageControl1);
  ATabSheet.PageControl:=PageControl1;
  ATabSheet.Caption:='Файл '+IntToStr(Tag);
  Tag:=Tag+1;
  ARichEdit:=TRichEdit.Create(ATabSheet);
  ARichEdit.Parent:=ATabSheet;
  ARichEdit.Align:=alClient;
end;
Так да, но нужно создавать указатели все-равно, чтобы получить доступ к каждому TRichEdit... Или искать контролл 'TRichEdit' на странице каждый раз.
Ответить с цитированием
  #10  
Старый 08.09.2012, 22:28
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от YVitaliy
каждый раз
достаточно будет 1 раз в событии OnChange.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 21:22.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025