|
|
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Visual FOX 6 На компьютере с разрешением 1280х1024 - форма выглядет нормально, а на компе с 1024х768 искажается. Как сделать универсально ? Не нашел конкретного ответа на форуме - хотя подобные вопросы встречаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 14:39 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Т.Е. как искажается? не влазит в экран? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 14:43 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Да - не умещается - ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:00 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Универсально - это создание формы для малого разрешения и последующее растягивание на бОльшее разрешение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:03 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Если не помещаются элементы управления, то необходимо расчитывать их расположение в Resize формы. Если не помещается сама форма, то в Init нужно ещё раз програмно установить WindowState=2. Должно все поместиться. Вообще программы пишут исходя из разрешения экрана 800*600, ведь заранее не известно на каком компе она будет установлена! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:07 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Другие варианты ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:08 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Можно, конечно поменять програмно разрешение экрана, но это уже совсем извращение!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:11 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
1. Разрабатывать исходя из меньшего разрешения (1024х768) я под 800x600 делаю 2. Прописывать Resize() для увеличения если гриды есть на форме 3. Если надо увеличение шрифта: Метод Form.ResizeObject() Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:11 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
MiklSМожно, конечно поменять програмно разрешение экрана, но это уже совсем извращение!!!! А если 15" панелька например? Тут 1024х768 без вариантов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:13 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
almmagДругие варианты ? Делать отдельно форму под каждое разрешение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:16 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Ну это я в качестве извращения... К стати совсем забыл, ведь можно просто установить свойство формы ScrollBars=3, или 1, 2. Появятся прокрутки!!!! Тоже решение проблеммы. Вот только не помню под 6 можно ли это сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:19 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
MiklSНу это я в качестве извращения... К стати совсем забыл, ведь можно просто установить свойство формы ScrollBars=3, или 1, 2. Появятся прокрутки!!!! Тоже решение проблеммы. Вот только не помню под 6 можно ли это сделать? Можно в 6-ке. Только вряд ли пользователь такому приколу обрадуется. По хорошему - если есть гриды, то надо Resize() делать. Если одни поля ввода, то pageframe поставить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:26 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Про Resize я уже писАл выше и про разрешение тоже, но ведь человек спросил другие варианы. Так пусть пробует все. А на счет прокруток в форме, так это как построить интерфейс. Мы же используем например EditBox с прокруткой!!! и ничего, пользователи в обморок не падают! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:33 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
MiklSПро Resize я уже писАл выше и про разрешение тоже, но ведь человек спросил другие варианы. Так пусть пробует все. А на счет прокруток в форме, так это как построить интерфейс. Мы же используем например EditBox с прокруткой!!! и ничего, пользователи в обморок не падают! Используем, и объект IE используем. Только при этом прокрутка изначально закладывается и расположение элементов с ее учетом выбирается. То что прокрутка зло - я не говорил. Я к тому что надо делать хорошо, а не лишь бы работало. А almmag похоже хочет одним кликом проблему решить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.09.2007, 15:54 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Всем спасибо. В примере DIMA_T В первой строчке программы : lpara toObj - что это - я не понял жту строчку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2007, 07:00 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
almmagВсем спасибо. В примере DIMA_T В первой строчке программы : lpara toObj - что это - я не понял жту строчку Функция рекурсивная. Параметер toObj - ссылка на объект контейнер. т.е. изначально на форму: ThisForm.ResizeObject(ThisForm) а если внутри формы есть еще контейнеры (pageframe например) то она вызывает сама себя this.ResizeObject(loC) для каждого контейнера Я вызов делаю из Init() формы: Код: plaintext 1. 2. 3. 4. gnDefaultFontSize - глобальная переменная. Инициализируется при старте программы: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2007, 07:33 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Нет в форме метода ResizeObject() Может ResizeEvent ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2007, 11:00 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
Где и как пересчитывать размеры и координаты визуальных объектов, а так же пересчитывать размеры шрифтов ... дело техники ... суть не в том. Пока например у меня все более мене нормально получилось только при отключенной функции "Отображать содержимое окна при перетаскивании" в "свойства Экрана", закладка эффекты в винде. Можно менять размер формы и при этом ресайзится все на форме с сохранением пропорций! Думаю, что это связано с округлением при пересчете - т.к. при включенной опции пересчет происходит практически непрерывно, а при отключенной только в момент окончания ресайза. З.ы. действиьельно для 6,7,8,9 - о других версиях не знаю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2007, 10:03 |
|
||
|
Visual FOX 6 - учет разрешения экрана
|
|||
|---|---|---|---|
|
#18+
almmagНет в форме метода ResizeObject() Может ResizeEvent ? Правильно. Его создать надо меню Form->New metod, а потом этот код туда вставить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2007, 10:42 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=34814780&tid=1588748]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 326ms |

| 0 / 0 |
