Вот стою перед дилемой. Есть форма, которую можна ресайзить. На ней объекты.
Можно поступить двумя способами:
1. При изменении размера, изменить размеры объектов и их расположение на форме методом геометрического преобразования фигур.
То есть, если ширина и высота формы вырастет в 2 раза, то все координаты и размеры вырастут в 2 раза.
2. Привязать объекты к краям формы. То есть растояние от краев останется, вырастут только размеры объектов.
Как лучше поступить?
Чего хотят от ресайза формы пользователи?
Модератор: Модераторы
- dunin
- энтузиаст
- Сообщения: 634
- Зарегистрирован: 02.05.2007 13:18:11
- Откуда: Тољя††и
- Контактная информация:
Вопрос больше похож на философский... писатели хотят, чтобы шрифт на странице пропорционально увеличивался, бухгалтера, чтобы в таблице больше данных видно было. Когда IT-шник открывает форму с настройками, то потом долго материться, если какой-то контрол спрятался за пределы видимой части формы, которую программист почему-то сделал с изменяемыми размерами... Геймеры вообще ни чего не хотят... Думаю ответ кроется в ответе на другой вопрос - "для чего программа / для чего определенная форма в программе". Вроде тема про интерфейсы была уже?
- GAMER
- энтузиаст
- Сообщения: 627
- Зарегистрирован: 06.08.2008 13:41:07
- Откуда: Ужгород-Днепр, Украина
- Контактная информация:
Тут много факторов. С одной стороны, хотелось бы чтобы все контролы были видны при разных настройках экрана. С другой стороны, чтобы при увеличении размеров формы увеличивались размеры контролов. Кто-то хочет закрыть весь экран, чтобы не отвлекало, а кто-то плохо видит и хочет большие размеры видеть.
Наверное нужно спросить у заказчика, чего хочет он
Наверное нужно спросить у заказчика, чего хочет он
Критерии просты.
Минимального размера окно должно позволять ввести данные.
При увеличении окна до разумных пределов, данные вводятся еще удобнее, чем прежде. Иначе окно нет смысла делать растягивающимся.
Никаких прокруток в окне - только закладки.
Все буквы должны помещаться в элементах интерфейса.
Неплохо поговорить с пользователями о разных вариантах окна.
Минимального размера окно должно позволять ввести данные.
При увеличении окна до разумных пределов, данные вводятся еще удобнее, чем прежде. Иначе окно нет смысла делать растягивающимся.
Никаких прокруток в окне - только закладки.
Все буквы должны помещаться в элементах интерфейса.
Неплохо поговорить с пользователями о разных вариантах окна.
GAMER писал(а):Что Вы понимаете под "еще удобнее"?
Допустим, поле ввода текста. При его увеличении удобнее вводить текст.
Добавлено спустя 4 минуты 1 секунду:
Ну, и понятно, что увеличивать размер букв и полей ввода по высоте, нет смысла. Пользователь уже настроил операционку, поставил размер буквы. Пользователю видней.
Добавлено спустя 26 минут 12 секунд:
Прокрутка как GOTO
Если Вы не знаете сколько элементов в форме будет, например сетка данных или ObjectInspector, то она может присутствовать. Если заранее ивестно сколько и каких элементов будет, то не нужна никакая прокрутка - закладки.
GAMER писал(а):С другой стороны, чтобы при увеличении размеров формы увеличивались размеры контролов. Кто-то хочет закрыть весь экран, чтобы не отвлекало, а кто-то плохо видит и хочет большие размеры видеть.
stikriz писал(а):что увеличивать размер букв и полей ввода по высоте, нет смысла. Пользователь уже настроил операционку, поставил размер буквы. Пользователю видней.
+1, те кто плохо видят, настраивают шрифты на уровне ОС/DE или в настройках программы. Размер окна, имхо, не должен влиять на масштаб текста/изображений, только на линейные размеры контролов (чтобы в них больше поместилось).
- GAMER
- энтузиаст
- Сообщения: 627
- Зарегистрирован: 06.08.2008 13:41:07
- Откуда: Ужгород-Днепр, Украина
- Контактная информация:
Спасибо за ответы, есть над чем думать 
А какой размер шрифта считается удобным для работы? С программой много работают менеджеры, то есть вводят и просматривают текстовые значения.
А какой размер шрифта считается удобным для работы? С программой много работают менеджеры, то есть вводят и просматривают текстовые значения.
пользуйтесь привязками, которые предлагает Lazarus, а востальном всем не угодишь. Это уже запросы заказчика, поверьте на слово
