Недавно добавленные исходники

•  Animation Loaders  628

•  DeLiKaTeS Tetris (Тетрис)  5 645

•  TDictionary Custom Sort  7 600

•  Fast Watermark Sources  7 291

•  3D Designer  10 492

•  Sik Screen Capture  7 812

•  Patch Maker  8 041

•  Айболит (remote control)  8 097

•  ListBox Drag & Drop  6 903

•  Доска для игры Реверси  100 014

•  Графические эффекты  8 159

•  Рисование по маске  7 542

•  Перетаскивание изображений  6 163

•  Canvas Drawing  6 527

•  Рисование Луны  6 458

•  Поворот изображения  5 645

•  Рисование стержней  4 561

•  Paint on Shape  3 270

•  Генератор кроссвордов  4 256

•  Головоломка Paletto  3 391

•  Теорема Монжа об окружностях  4 218

•  Пазл Numbrix  2 737

•  Заборы и коммивояжеры  3 638

•  Игра HIP  2 443

•  Игра Go (Го)  2 425

•  Симулятор лифта  2 832

•  Программа укладки плитки  2 276

•  Генератор лабиринта  2 985

•  Проверка числового ввода  2 496

•  HEX View  2 898

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Создание компонента TTable без формы 4



Я привожу некоторый код, касающийся описываемой проблемы: он работал, когда я использовал его в большом приложении. Я не знаю специфического метода создания компонента TTable вне родителей, поэтому я пошел путем создания своего класса от TTable во время инициализации модуля. Удобство такого подхода объясняется наличием под рукой всегда готового к работе экземпляра класса, стоит всего-лишь добавить модуль к вашему приложению. Конечно, новый класс не должен иметь одиноко выглядящую процедуру со странной технологией фильтрации данных :=))), да и не помешала бы публикация нескольких событий, но этот пример призван все-го лишь продемонстрировать иной подход к решаемой задаче.


unit Unit2;

interface
uses db, DBTables, dialogs;

type
  fake = class(Ttable)
    procedure fakeFilterRecord(DataSet: TDataSet; var Accept: Boolean);
  end;

var
  MyTable: fake;

implementation

procedure fake.fakeFilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
  showmessage('Здравствуй, Вася');
end;

initialization

  MyTable := fake.create(nil);
  with Mytable do
  begin
    DataBaseName := 'dbdemos';
    TableName := 'biolife';
    OnFilterRecord := MyTable.fakeFilterRecord;
    Filtered := true;
    active := true;
  end;

  {проверка получением неких данных...}
  showmessage(MyTable.fields[1].asstring);

finalization
  {Важно!  MyTable не имеет родителя, - уничтожаем объект сами,
  иначе память не высвобождается...}
  MyTable.free;

end.





Похожие по теме исходники

Создание таблиц в Paradox

Расширение компонента TEdit

База данных без BDE

БД без BDE

 

Кривая Безье

Bezier Curves (кривые Безье)

Splay Line (Безье)

Сплайн на 8 точек (Безье)

 

Text Bezier Curve (Безье)

Кривые Безье на OpenGL




Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer». Delphi World FAQ

Группа ВКонтакте