Вверх ↑
Ответов: 16
Рейтинг: 0
#1: 2008-08-22 20:24:45 ЛС | профиль | цитата
Здравствуйте, я решил сделать с помощью HIASM под себя многофункциональную среду разработки. По определённым причинам (на которых мне не хочется заострять внимание) мне эта среда разработки жизненно необходима. Поэтому буду мучить вас всех, может быть дилетантскими, вопросами (знаю в определённой степени HTML, CSS, JavaScript, некоторые диалекты Basic: но не знаю ни Pascal, ни Delphi).
Теперь к проблемам:
Первое с чем столкнулся - это проблема главному окну моей программы "эластичности". То есть, открывает пользователь программу, меняет размеры панелей контролов под себя, а, при закрытии программы, контролы должны записать свои размеры в главный ini файл. Считать свойства размеров и расположения с контролов не проблема. Да и записать их в ini файлы тоже. А вот присвоить эти свойства контролам при запуске приложения уже задача не простая. Ведь у большинства контролов отсутствуют методы динамического изменения их свойств размерности.
Тоже самое, при изменение размеров главного окна приложения контролы должны изменять свои размеры пропорционально их начальным размерам. Обработчик события resize главного окна сделать не проблема, а вот каким Макарам изменять свойства контролов?
Нашёл на этом форуме и в примерах SVN два различных приёма динамического изменения свойство размерности контролов.
Первый, путём использования использования стандартного элемента PosWindow (и по аналогии других элементов ВинКонтрол). Ту всё понятно. Изучил пример в ветке форума http://www.hiasm.com/xf/topic.php?p=88840. И полетело...
Но меня очень заинтересовал второй путь. В примерах SVN есть пример под названием "As_TabGrid.sha". Открыв его в программе HIASM, я увидел у стандартных контролов "дополнительные методы".
В поскалевских исходниках (Ctrl + F) я их что-то не заметил.
Открыв пример в обычном "блокноте", я увидел функции Point с именами "дополнительных методов" в качестве параметра. В справке к программе (Хелп-файл) я ничего не нашёл про функцию Point, и на этом форуме тоже (извините, если что-то не заметил).
Теперь вопросы:
1) Как работает функция Point, и откуда взялись эти "дополнительные методы" (в каком месте Паскаль-исходника они прописаны)?
2) Можно ли "создать" "дополнительные точки" из среды HIASM (посредствам контекстного меню, например), или же их надо вставлять в код вручную?
3) Ко всем ли контролов можно "добавить" эти "дополнительные методы", и какие именно?
4) Какой из двух методов (с помощью элементов ВинКонтрол, или с помощью "дополнительных методов") является самым оптимальным с точки зрения конечной компиляции продукта?
Извините ещё раз за беспокойства.

карма: 0

0