Недавно я начал создавать программу для компании, в которой я работаю. Так же, как справочная информация, я все еще студент и начинающий программист, поэтому мое решение, вероятно, не рекомендуется, и я не знал, как сделать это иначе, но оно работает, и я не буду судить за это, потому что это студенческая работа, совершенно не связанная с программированием.
Суть программы в том, что она будет работать на нескольких компьютерах с разными размерами экрана и разрешением (800x600 и выше). Чтобы убедиться, что он занимает как можно большую часть экрана без потери какой-либо части программы, я установил для макета значение null и жестко закодировал все, используя относительные значения.
Программа выполнена в стиле киоска, и я сначала получаю значения размера экрана и оттуда иду (например, в верхней части моей головы, левое меню занимает восьмую часть экрана, верхняя панель - 2%, так далее.). Я также использую метрики шрифта, чтобы убедиться, что компоненты имеют правильный размер и что все отображается правильно.
Мой вопрос: почему так недовольно делать макет пустым вместо использования менеджеров компоновки? (На некоторых форумах мне говорили, что это ужасный способ работы). Я знаю, как работает менеджер макетов, и знаю, как использовать различные макеты, но для требований этой программы (несколько разных разрешений, пользовательских форм кнопок и мест размещения изменение текста на компонентах при смене языка и т. д.), я не мог себе представить, что для этого всем нужны менеджеры компоновки.
Как вы, более опытные программисты, используете менеджеры по расположению в такой ситуации? И что вы делаете, когда хотите, чтобы кнопка была где-то определенной, а другие компоненты - где-то еще, которые не соответствуют ни одному из предопределенных макетов?