for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Лисоводы   всех   стран,  объединяйтесь !!!  

Список Форумов  :: Обсуждаем проекты
  

масштабирование форм VFP9. Обсуждение конкретного решения
AlexSSS
Автор

Сообщений: 6110
Откуда: Tallinn, Estonia
Дата: 06.11.05 19:33:31
Перемещено из форума Visual Foxpro, Foxpro for DOS

скачать с forum.foxclub.ru

Данное решение предназначено для изменения масштаба форм в VFP9.
Предполагается, что в форме используется один шрифт одного размера.
В этом случае масштабирование пройдет максимально красиво.
При использовании нескольких шрифтов и размеров может потребоваться доводка класса.

Принцип действия.
Класс реализован на основе стандартного класса Combobox
В INIT класса прописаны наименование и размер основного шрифта формы.
При выборе любого другого размера шрифта в Combobox, класс
1. Запоминает первоначальные значения Anchor для всех обьектов формы
2. Изменяет Anchor на 240 (relative на все стороны)
3. Изменяет размер шрифта на выбранный
4. Пропорционально изменению размеров (средней ширины и высоты) шрифта, изменяет размеры формы. При этом форма автоматически масштабируется.
5. Восстанавливает исходные значения Anchor

Применение.
Скачайте и распакуйте архив
Поместите на форму обьект Resizer из распакованного класса
В Resizer.Init замените имя и размер основного шрифта, используемого в форме, на свой
Запустите форму и выберите в Resizer-е размер шрифта для формы

Примечания.
В большинстве моих проектов в формах используется один основной шрифт, Arial,9
Именно он и прописан по умолчанию в Resizer.Init
Формы нормамально читаются при разрешениях 800*600 и 1024*768
Однако сейчас стали закупаться LCD дисплеи с родным разрешением 1200*1024, где формы становятся очень мелкими и плохочитаемыми. В первую очередь, решение предназначено для адаптации форм под любое произвольное разрешение экрана.

Замеченные некорректности.
иногда не корректно масштабируются OptionGroup при Style=Graphical
не корректно масштабируется Grid, если на момент масштабирования в нем не прописан RecordSource

вполне возможно, что потребуется некоторая доводка кода под конкретный стиль программирования
Однако, класс получился ОЧЕНЬ простым, доработать его под свои конкретные нужды можно достаточно просто
Кстати, побочным эффектом решения стала возможность не только увеличивать форму под бОльшее разрешение, но и корректно уменьшать ее для меньших разрешений. Как вариант, это может потребоваться, если разработчик работает на большом разрешении, скажем 1280*1024, а прога должна работать и под 800*600

PS. Благодарю всех, кто принял участие в первоначальном обсуждении проблемы
forum.foxclub.ru



Отредактировано (07.11.05 09:41)


------------------
Чудес не бывает, бывают кривые руки
Ratings: 0 negative/0 positive

Re: масштабирование форм VFP9. Обсуждение конкретного решения
piva

Сообщений: 18600
Откуда: Курган
Дата: 06.11.05 21:10:03
Выложи в решения, там и будут комментарии, если хочешь онлайнового обсуждеия, то для этого есть специальный раздел "Обсуждем проекты". Тебя последнее время тянет куда-=то не туда, то баги переноса обсуждать в курилке - то решение выкладываешь не в решения. Повторюсь, правила для всех одинаковые




------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive

Re: масштабирование форм VFP9. Обсуждение конкретного решения
AlexSSS
Автор

Сообщений: 6110
Откуда: Tallinn, Estonia
Дата: 06.11.05 21:21:35
piva, спасибо за замечание ;o)
бум исправляться. Уже сам чувствую, что в чужом монастыре свои порядки наводить не стоит, хоть иногда и хочется ;o)
А в решения перемещу, если решение действительно окажется нужным и другим.
Ratings: 0 negative/0 positive

Re: масштабирование форм VFP9. Обсуждение конкретного решения
AlexSSS
Автор

Сообщений: 6110
Откуда: Tallinn, Estonia
Дата: 06.11.05 21:37:41
последняя версия класса



Отредактировано (06.11.05 22:15)


------------------
Чудес не бывает, бывают кривые руки
Ratings: 0 negative/0 positive

Re: масштабирование форм VFP9. Обсуждение конкретного решения
piva

Сообщений: 18600
Откуда: Курган
Дата: 06.11.05 23:20:44
Никто никогда не скажет что решение "ненужное" другое дело насколько оно востребовано, так что больше решений разных




------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive



Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 5 alex;  (Гостей: 4)

17.01.2021 08:41:45 exec: 0.02
Mem: 1.157 Mb

© 2000-2021 Fox Club 
Яндекс.Метрика