|
Платные хостинги
Раскрутка сайта
Книги по программированию
Turbo Vision!!!
- Я делаю программу на Turbo Vision. Что за программа - не важно. Допустим, что для того чтобы создать новый документ у меня в программе будут строки...var R: TRect;begin R.Assign(0,0, 80, 23); Desktop^.Insert(New(PMyDoc, Init(R, '', 0)))end;...В данном случае PMyDoc - это мой собственный класс окна с документом. Предположим что моя программа работает с массивом строк (заметьте, это не текстовый редактор). Этот массив строк программа должна выводить в окно и т.д. Программа многодокументная. Вопрос следующий - где мне следует описать этот массив строк, в классе приложения или в классе окна?Хотя мне почему то кажется что в классе окна. Прав ли я?
- Все зависит от того, где ты используешь этот массив строк. Если он юзается постоянно втечение работы программы для всех окон один и тотже, то тогда нужно в классе приложения. Если для каждого окна соотв вот такой массив, то кончено в классе окна. Если один такой массив соответствует конкретному документу, то классу документа.
- PMyDoc потомок какого объекта?
- PMyDoc = ^TMyDoc;TMyDoc = object(TWindow)...end;Цитата (Fedor @ 14.4.2005, 07:34) Если один такой массив соответствует конкретному документу, то классу документа. У меня, кстати, если точнее, то не массив а коллекция. Да, кстати, у меня прямо в самой коллекции есть функция записи в файл всей коллекции (функция SaveToFile). Даже если я и объявлю её в классе окна, то как мне через приложение мне обратиться к окну чтобы я мог вызвать эту функцию?
- Стоит всё-таки объявлять объявлять глобальной переменной. Хранение строк в коллекции не имеет оношения к тому, кто их отображает.Вот, писал где-то год назад программу для Турбо Вижна: мини база данных (создание, редактирование, поиск) на основе коллекций. Смотри как я реализовал её: Добавлено @ 09:31 Для записи различных типов документов перекрывай в потомке коллекции функцию SaveToFile. Присоединённый файл ( Кол-во скачиваний: 1 ) stud_db.rar
- Это чуть-чуть не совсем так. В коллекции у меня хранятся не строки а объекты пользовательского типа (записи, одна булевая переменная и две другие стринговые). Во-время работы комп должен просчитывать что выводить в окно. У меня приложение многодокументное и если хранить все в глобальной переменной, то при каждом создании окна надо создавать объект. А я думал что он будет создаваться автоматически при создании окна. Так же легче и тем более определять, к кому относится данный объект совсем не нужно.
- Ну... зависит от реализации. Это делай уже как тебе удобнее."Автоматически" - тогда надо описывать в конструкторе (инициализация объекта).Я не понял, ты получил ответ на вопрос или нет?
Интернет казино
Онлайн игры
Увеличение члена
Купить DVD
|